假設我有一個 gzipped 檔案,但我的腳本只接受一個未壓縮的檔案。
在不修改腳本以接收壓縮檔案的情況下,我可以使用 bash 即時解壓縮檔案嗎?
例如:
python ../scripts/myscript.py --in (gunzip compressed_file.txt.gz)
uj5u.com熱心網友回復:
您可以使用行程替換,只要 Python 腳本不嘗試在檔案中向后查找:
python ../scripts/myscript.py --in <(gunzip compressed_file.txt.gz)
Python 接收一個檔案名作為引數;該名稱并不是指磁盤上的簡單檔案。它只能以只讀模式打開,嘗試使用該seek方法將失敗。
如果您使用的是zsh代替bash,則可以使用
python ../scripts/myscript.py --in =(gunzip compressed_file.txt.gz)
Python 會收到一個實際(臨時)檔案的名稱,該檔案可以像任何其他檔案一樣使用。但是,該檔案將在python退出后被 shell 洗掉。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/404399.html
標籤:
上一篇:帶反斜杠的Heredoc
下一篇:bash命令替換出現空白
