我已經搜索了無處不在,想出下面的腳本。我無法弄清楚問題在這裏。 我試圖循環遍歷名爲Extracted_Source的目錄中的所有目錄,以重命名任何帶有附加時間戳的CSV文件。 任何幫助表示讚賞。在某個目錄中遞歸地重命名某些文件 - Shell/Bash腳本
我不斷收到一個
No such file or directory./Extracted_Source/*
下面是源:
for files in ./Extracted_Source/*
do if ["$files" contains ".csv"]
then mv "$files" "${files%}_$(date "+%Y.%m.%d-%H.%M.%S").csv";
fi done; echo end
這意味着您的當前工作目錄中不存在Extracted_Source文件夾,或者Extracted_Source /不包含任何文件。 'ls。/ Extracted_Source/*'顯示什麼?我想這將是同樣的事情。 –
您的*參數擴展w /子字符刪除*'$ {files%}'刪除** nothing **。也許你打算'$ {files%.csv} _...'? –