Bash
如何使 ls 和 xargs 組合省略路徑
我有一個名為 lib 的文件夾。在那個文件夾中有一些文件。我想獲取以.jar 結尾的所有文件的名稱,並將它們連接成一行,用空格分隔。我根本不想要路徑名。
我試過這個:
ls lib/*.jar | xargs
輸出是
lib/file1.jar lib/file2.jar
但我想要得到的是
file1.jar file2.jar
我怎樣才能做到這一點?
我也試過 find 但我遇到了同樣的問題
find lib -name *.jar | xargs
還有一個
find lib -maxdepth 1 -name *.jar -printf '%f\n' | xargs
%f File's name with any leading directories removed (only the last element).
這對我有用,儘管似乎應該有一種更簡單(即不那麼老套和漂亮)的方式:
$ ls lib/*.jar | xargs -n 1 基本名稱 | xargs