Answers:
{subfolder1}
的值为{subfolder1}
,因为没有其他选择。使用subfolder1
代替。
csh
(大括号扩展来自哪里)tcsh
或中的不同fish
。
大括号只有在逗号之间用逗号分隔的字符串(例如{abc,def}或范围,例如在{a..e}之间指定)时才会展开。
在您的情况下,您可以只写subfolder1而不用大括号括起来,因为不需要
cat ./{mainfolder1,mainfolder2,mainfolder3}/subfolder1/book.txt > out$var
/path/{a,}/filename
扩展为两个字符串/path/a/filename
和 /path//filename
,这可能是不必要的。
ambiguous redirect
如果尝试重定向到由无值的无引号变量指定的文件(例如),则会得到提示echo 'hello' >$idontexist
。
> *.txt
有多个.txt
文件,或者> $file
如果$file
包含空格。但是,当然,给出cat
多个论点并没有歧义
echo
代替cat
查看您得到的命令行。(或set -x
用于调试。)