我有一個包含文件名列表的txt文件。 在bash中,我如何解壓zip文件中列表中指定的文件?解壓縮在txt文件中指定的文件列表
回答
這應該工作:
unzip -q /path/to/zipfile $(cat thetxtfile)
當然,這個命令需要在目錄中是最好空開始發行。
需要注意的是,如果有空間到您的文件名,這是不行的,你需要做的這個代替:
while read thefile; do unzip -q /path/to/zipfile "$thefile"; done <thetxtfile
這將取決於文件的命名方式。例如,空間會有問題。如果文件太多,並且超出平臺的參數數量限制,它也會失敗。 –
是的,沒錯。這是一個「快速解決」。使用完整的解決方案進行編輯... – fge
如果你使用在命令行中的文件列表的工作, xargs
幾乎總是最好的答案 - 它用乾淨的空格處理文件名,並且它繞過了參數數量的限制。我建議這樣的:
tr '\n' '\0' <filelist.txt | xargs -0 unzip -q /path/to/zipfile
採用tr '\n' '\0' <filelist.txt
需要您的文件和替代新線NULL字符的列表。 xargs -0
會讀取一個nul分隔的文件列表,並將其粘貼到以下命令的agument列表中。
如果您的文件名列表使用'\ r \ n'或'\ r'風格的行尾,這將會中斷。
'xargs -d'\ n''相當於'tr'和'xargs -0'的組合。還值得注意的是,根據xargs手冊頁,「Unix文件名可以包含空格和換行符」,所以我猜想在所有情況下都不可能解決這個問題,因爲輸入是不明確的。 –
好點。理論上,我猜想可以使用nul字符(或者文件名中沒有使用某個分隔符)編輯文本文件,然後可以使用-0或-d
- 1. 在yii中壓縮/解壓縮文件
- 2. 在Qt中壓縮.txt文件
- 3. 解壓縮文件
- 4. 解壓縮文件
- 5. Linux上的GZip壓縮文本文件中指定的文件
- 6. 壓縮文件未解壓
- 7. 用Archive :: Rar在perl中指定的解壓縮文件夾
- 8. 將.txt文件解壓縮爲.mat文件
- 9. 壓縮解壓縮的exe文件
- 10. png文件的壓縮和解壓縮
- 11. 解壓縮文件並讀取解壓縮文件
- 12. 在python中壓縮和解壓縮文本文件
- 13. Node.js - 壓縮/解壓縮文件夾
- 14. Magick ++壓縮和解壓縮文件
- 15. 壓縮和解壓縮文件夾
- 16. 壓縮並歸檔指定文件夾中的所有文件
- 17. 列出文件,無需解壓縮和選擇性解壓縮
- 18. 在c#中使用zlib壓縮文件時解壓文件
- 19. 解壓縮(解壓縮)由.net壓縮(解壓縮)的文件.net system.io.compression.gzipstream
- 20. 在Windows上解壓壓縮文件8
- 21. 解壓Z01,Z02,壓縮在Python文件
- 22. 如何解壓/解壓縮* .z文件
- 23. 如何解壓/解壓縮文件
- 24. 什麼是可用於txt文件壓縮的文件壓縮算法?
- 25. 下載該壓縮文件時自動解壓縮文件
- 26. 壓縮/解壓縮文件夾和文件
- 27. 上傳壓縮文件,解壓縮並讀取文件
- 28. 壓縮和解壓縮文件和文件夾
- 29. TXT文件壓縮與PHP腳本
- 30. BlackBerry - 解壓縮Zip文件
你已經試過了什麼? –