我有一個包含其他幾個資料夾的資料夾,每個資料夾都以以下格式命名:
Company XYZ (1999 OneWordDescription)
我正在嘗試過濾掉標記為 1995 年或更早的文件,以便我可以將它們移動到另一個資料夾,然後手動刪除它們。修改/創建的日期沒有幫助,因為這些都已被修改,並且創建的日期由於某種原因不準確。
我可以運行什麼 Linux 命令或腳本來將帶有“(1995”及更早版本的所有內容移動到不同的目錄?
答案1
若要移動從 1980 年到 1995 年(含)的所有資料夾,請執行:
shopt -s nullglob
mv *'('{1980..1995}*/ /some/path/
該shopt -s nullglob
命令並不是絕對必要的,但如果缺少任何年份,它會消除錯誤訊息。
上面使用大括號擴充{1980..1995}
來明確產生所有年份。您可以只使用一條語句來了解大括號擴充的工作原理echo
:
$ echo {1980..1995}
1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995