Shell

複製所有沒有副檔名的文件

  • July 3, 2015

我們可以通過副檔名複製一些文件,如下所示:

cp *.txt ../new/

但是如何複製所有沒有副檔名的文件?

@ubaid-ashraf 的答案幾乎就在那裡。指定沒有副檔名的文件的方法ksh是:

cp -- !(*.*) /new/path/

以便跳過文件名中帶有點的任何文件。

為此bash,您需要啟用extglob選項 ( shopt -s extglob) 和( ) 中的kshglob選項。zsh``set -o kshglob

您可以執行以下操作:

cp -- !(*.txt) /path/to/directory

上面的程式碼將複製所有沒有 .txt 副檔名的文件。您還可以通過管道字元提供多個副檔名。

例如:

cp -- !(*.txt|*.c|*.py) /path/to/directory

引用自:https://unix.stackexchange.com/questions/213674