ディレクトリ名のスペースを処理するようにbashエイリアスをどのように設定しますか? [コピー]

ディレクトリ名のスペースを処理するようにbashエイリアスをどのように設定しますか? [コピー]

zsh以下のエイリアスは、ディレクトリ名のスペースがエスケープされると正しく機能しますが、\正しくbash処理されません。 bashで正しく機能するにはどのような変更が必要ですか?

dum() {
  du -h --max-depth=1 $1  
}

zsh成功

 user@server: dum "Server Configuration"
32K     Server Configuration
 user@server: dum Server\ Configuration
32K     Server Configuration

バッシュ失敗

user@server:~$ dum "Server Configuration"
8.0K    Server/install_scripts
300K    Server
du: cannot access 'Configuration': No such file or directory
user@server:~$ dum Server\ Configuration/
8.0K    Server/install_scripts
300K    Server
du: cannot access 'Configuration/': No such file or directory      

で動作するようにエイリアスを作成するにはどうすればよいですかbash

ベストアンサー1

(これはエイリアスではなく関数です)

参照変数:

dum() {
  du -h --max-depth=1 "$1"  
}

(それはバッシュトラップ #2そして#4.)

おすすめ記事