这个bash命令有什么作用?

时间:2018-06-09 22:42:27

标签: bash scripting

这个命令有什么作用?它可以缩短而不会失去功能吗?

echo "abcabcabc" | sed "s/aBc/xyZ/gi;s/Z/a/;s/c/CCC/g" | xargs ls -ld

1 个答案:

答案 0 :(得分:-1)

如果您在Mac OS终端上输入该命令,您将知道该命令的作用。它不会产生任何错误,因为sed命令中的i似乎是错误的或输入错误。然而

echo "abcabcabc" | sed "s/aBc/xyZ/g;s/Z/a/;s/c/CCC/g" | xargs ls -ld

输出字符串abcabcabc,该字符串用作sed命令的输入,用于将aBc替换为xyZ,Z用a和c替换cCC。这导致字符串abCCCabCCCabCCC再次输入ls -ln命令。如果您在当前目录中有一个名为abCCCabCCCabCCC的文件,则会找到该文件,并向您显示其详细信息,否则输出为

ls: abCCCabCCCabCCC: No such file or directory

如果可以缩短,取决于你真正想要实现的目标。

echo "abcabcabc" | sed "s/c/CCC/g" | xargs ls -ld

在这种情况下,

会有相同的结果。