Ниже приведен простой тестовый пример того, что я хочу проиллюстрировать.
В bash,
# define the function f
f () { ls $args; }
# Runs the command `ls`
f
# Runs the fommand `ls -a`
args="-a"
f
# Runs the command `ls -a -l`
args="-a -l"
f
Но в zsh
# define the function f
f () { ls $args }
# Runs the command `ls`
f
# Runs the fommand `ls -a`
args="-a"
f
# I expect it to run `ls -a -l`, instead it gives me an error
args="-a -l"
f
Последняя строкав zsh выше дает мне следующую ошибку
ls: invalid option -- ' '
Try `ls --help' for more information.
Я думаю, что zsh выполняет
ls "-a -l"
, когда я получаю ту же ошибку.
Таккак мне понять поведение bash здесь?
Я не уверен, если я ясен, дайте мне знать, если вы хотите что-то узнать.