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用于调试。)