Как можно настроить псевдонимы 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.)

Связанный контент