所以沒有目錄,也沒有隱藏檔案。只是文件。僅列出文件可以使用如下行來完成。
ls -p | grep -v /
現在我希望這一行的結果用逗號分隔。
答案1
您可以用於tr
該工作。
ls -p | grep -v / | tr '\n' ','
答案2
您可以使用 GNUls -m
命令。它將列印以逗號分隔的所有檔案和目錄。
答案3
Thomas 提出的解決方案有效,但它在最後一項中添加了一個逗號(這可能不是您想要的)並刪除了逗號後面的空格。以下替代方案保留逗號後面的空格,並且不在最後一項後面加上逗號:
ls -1p | grep -v / | xargs echo | sed 's/ /, /g'
當然,如果你想去掉項目之間的空格,只需調整 sed 表達式即可:
ls -1p | grep -v / | xargs echo | sed 's/ /,/g'
(使用小寫「l」和數字「1」(一)的字體的檢視者請注意:傳遞給的第一個選項ls
是1
數字,而不是小寫l
。)
正如 Jim L 在評論中指出的那樣,上述命令僅適用於不包含空格的檔案名稱。以下命令可以解決這個問題:
ls -1p | grep -v / | sed 's/$/, /g' | xargs echo | sed 's/,$//g'
echo
在將列表傳遞給;之前,這會用逗號替換行結尾。最後一部分刪除了清單末尾的命令。