如何将ls -1的结果加入到一行中,并用我想要的任何内容将其分隔?


当前回答

不要白费力气。

ls -m

它就是这么做的。

其他回答

就bash

mystring=$(printf "%s|" *)
echo ${mystring%|}

上面的Python回答很有趣,但自己的语言甚至可以使输出更好:

python -c "import sys;打印(sys.stdin.read () .splitlines())”

如果你的xargs版本支持-d标志,那么这应该可以工作

ls  | xargs -d, -L 1 echo

-d是分隔符标志

如果没有-d,那么可以尝试以下操作

ls | xargs -I {} echo {}, | xargs echo

第一个xargs允许您指定分隔符,在本例中为逗号。

不要白费力气。

ls -m

它就是这么做的。

编辑:如果您希望分隔符为逗号,则只需“ls -m”

啊,力量和简单!

ls -1 | tr '\n' ','

把逗号“,”改成任何你想要的。注意,这包括一个“尾随逗号”(用于以换行符结束的列表)。