Shell
逐行拆分文件並控制生成的文件副檔名
文件分割有一個標準的命令——split。
例如,如果我想將一個單詞文件分成幾塊 10000 行,我可以使用:
split -dl 10000 words wrd
它會生成多個 wrd.01、wrd.02 等形式的文件。
但我想為這些文件指定一個特定的副檔名——例如,我想獲取 wtd.01.txt、wrd.02.txt 文件。
有沒有辦法做到這一點?
這在當時是不可用的,但是使用更新的版本 (
≥ 8.16
)gnu split
可以使用該--additional-suffix
開關來控制生成的擴展。來自man split
:--additional-suffix=SUFFIX append an additional SUFFIX to file names.
所以在使用該選項時:
split -dl 10000 --additional-suffix=.txt words wrd
生成的片段將自動以
.txt
:wrd00.txt wrd01.txt .........
此類任務最好使用 shell 進行管理。使用 split 然後編寫一個簡單的循環來重命名文件。例如
for file in wrd.* do mv "$file" "$file.txt" done
將重命名您的 wrd.01、wrd.02 等文件,使它們都具有 .txt 副檔名。