我是Unix shell腳本的新手。掌握了基本的命令知識並試圖編寫我的第一個腳本。 問題:我有一個包含大量PDF和DOC文件的存檔文件夾。他們很多都有PDF和DOC版本,例如hello.doc和hello.pdf。我想用相同的文件名刪除這些「重複」的所有pdf版本,並且實際文件內容是否相同並不重要。 我在過去的一週嘗試尋找一些解決方案,但通常我只找到基於文件內容的解決方案。Unix Shell腳本刪除具有相同文件名但文件擴展名不同的重複文件
非常感謝您的幫助。
我是Unix shell腳本的新手。掌握了基本的命令知識並試圖編寫我的第一個腳本。 問題:我有一個包含大量PDF和DOC文件的存檔文件夾。他們很多都有PDF和DOC版本,例如hello.doc和hello.pdf。我想用相同的文件名刪除這些「重複」的所有pdf版本,並且實際文件內容是否相同並不重要。 我在過去的一週嘗試尋找一些解決方案,但通常我只找到基於文件內容的解決方案。Unix Shell腳本刪除具有相同文件名但文件擴展名不同的重複文件
非常感謝您的幫助。
你可以嘗試這樣的:
for i in *.doc; do
pdffile=$(echo "$i"|sed 's/\.doc/\.pdf/')
if [[ -f "$pdffile" ]]; then
rm "$pdffile"
fi
done
哪些呢:在當前目錄下的每個doc文件,是一個文件具有相同的名稱,但PDF,然後刪除PDF文件。
歡迎來到StackOverflow!請查看[如何提問](https://stackoverflow.com/help/asking)指南,特別是[如何創建最小,完整和可驗證的示例](https://stackoverflow.com/help/mcve) – AesSedai101