use*_*407 8 ls text-formatting
所以没有目录也没有隐藏文件。只是文件。可以使用以下行仅列出文件。
ls -p | grep -v /
Run Code Online (Sandbox Code Playgroud)
现在我希望这一行的结果用逗号分隔。
Tho*_*mas 18
您可以tr
用于该工作。
ls -p | grep -v / | tr '\n' ','
Run Code Online (Sandbox Code Playgroud)
Thomas 提出的解决方案有效,但它在最后一项添加了一个逗号(这可能不是您想要的)并删除了逗号后面的空格。以下替代方案保留逗号后面的空格,并且不在最后一项后面添加逗号:
ls -1p | grep -v / | xargs echo | sed 's/ /, /g'
Run Code Online (Sandbox Code Playgroud)
当然,如果你想去掉项目之间的空格,只需调整 sed 表达式即可:
ls -1p | grep -v / | xargs echo | sed 's/ /,/g'
Run Code Online (Sandbox Code Playgroud)
(使用小写“l”和数字“1”(一)的字体的查看者请注意:传递给的第一个选项ls
是1
数字,而不是小写l
。)
正如 Jim L 在评论中指出的那样,上述命令仅适用于不包含空格的文件名。以下命令可以解决这个问题:
ls -1p | grep -v / | sed 's/$/, /g' | xargs echo | sed 's/,$//g'
Run Code Online (Sandbox Code Playgroud)
在将列表传递给 ; 之前,这会用逗号替换行结尾echo
。最后一部分删除了列表末尾的命令。
归档时间: |
|
查看次数: |
42193 次 |
最近记录: |