我对Bash脚本非常陌生。我有一个“ testscript”,它用作更高级/有用的脚本的基础:
#!/bin/bash
files=$1
for a in $files
do
echo "$a"
done
当我不带引号的情况下调用它时,它只会在目录中拾取一个文件:
testscript *.txt
但是,当我用引号将其调用时,它可以正常工作并挑选出所有文本文件:
testscript '*.txt'
这里发生了什么?
—
通配符
这很值得一看。 guide.bash.academy
—
vascowhite
for a in "$@"; do
(或for a; do
),从而将问题抛在了外壳上,而不是省略了引号。