我想完全如下:
cut -d$'\t' test1.txt
cut -d$'\t' test2.txt
使用:
for i in 1 2; do
echo "cut -d$'\t' test$i.txt"
done
但事实证明:
cut -d$' ' test1.txt
cut -d$' ' test2.txt
怎样才能从echo获得'\ t'?感谢
答案 0 :(得分:0)
echo
可能会也可能不会尊重或扩展标记或转义序列。 printf
没有这种未定义的行为。如果您想要精确输出,请完全远离echo
。此外,您应该转义任何特殊字符,例如$
和\
以获得良好的衡量标准:
for i in 1 2
do
printf "%s\n" "cut -d\$'\\t' test$i.txt"
done
顺便说一句,如果您想使用test*.txt
处理cut
个文件,这是一个非常糟糕的起点。