Linux shell 命令参数分隔符

Linux 的参数的缺省参数是空白符。所以 echo hello          world 实际上是两个参数,hello 和 world 之间存在多个空白符。输出只有 echo 缺省的空格。如果需要作为一个参数,需要加上引号表示是一个整体字符串。所有的参数实际上都是字符串。shell 本身就是文本字节流处理。

将一个命令的输出作为另一个命令的参数时,有三种写法。

1、ls -la `which cd`

2、ls -la $(which cd)  #新版本的 shell 的写法

3、which cd | xargs ls -la

命令替换是将 B 命令的输出作为 A 命令的参数使用。如果结果 B 命令的输出包含多行,将每次使用一行直到完成。xargs 缺省是将输入转换成空格分离的参数(相当于一行),可以使用 -n 来指定每行的数量从而来达到分行的效果。从此意义上来说,无论空格还是换行符,空白符都可以作为命令行的参数分隔符(separator, delimiter)。




猜你喜欢

转载自blog.csdn.net/zhouguoqionghai/article/details/79056142