linux – 为什么xargs -L产生正确的格式,而xargs -n不能?

前端之家收集整理的这篇文章主要介绍了linux – 为什么xargs -L产生正确的格式,而xargs -n不能?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

考虑以下:

$echo index.html* | xargs -L 1 ls -l
-rw-r--r-- 1 zeki zeki  17198 2011-05-03 23:18 index.html
-rw-r--r-- 1 zeki zeki  17198 2011-05-03 23:20 index.html.1
-rw-r--r-- 1 zeki zeki  17198 2011-05-03 23:21 index.html.2
-rw-r--r-- 1 zeki zeki 146589 2011-05-05 12:29 index.html.3
$echo index.html* | xargs -n 1 ls -l
-rw-r--r-- 1 zeki zeki 17198 2011-05-03 23:18 index.html
-rw-r--r-- 1 zeki zeki 17198 2011-05-03 23:20 index.html.1
-rw-r--r-- 1 zeki zeki 17198 2011-05-03 23:21 index.html.2
-rw-r--r-- 1 zeki zeki 146589 2011-05-05 12:29 index.html.3

为什么-n选项会产生不正确的格式?为了以防万一,我在Ubuntu下使用bash.谢谢.

最佳答案
-L按行分割; echo不会通过行而是通过空格分隔其输出,因此运行单个ls -l并将所有列格式化为一个组.

-n按参数分割;在没有-L或-0的情况下,分隔符是空格(可能通过引用修改),因此每个文件名都有自己的ls -l运行,并且独立运行无法协调列宽.

猜你在找的Linux相关文章