我编写此脚本是为了将一个大型文档拆分为多个 500 行的文档。它适用于第一个渲染文件的异常(exception)情况,该文件短一行(499 行)。 主文档的第一行正确传输到“file01”,“file02”的第 1 行是“file01”第 499 行的下一个连续行。 下面是我的脚本。谢谢你们。 在终端中使用:Splitter.sh "filetosplit.txt"
#!/bin/bash
find $1 -type f | sort -n > $1_TapeList.txt
mkdir 500FileTL_$1
cd 500FileTL_$1
awk '{outfile=sprintf("file%02d.txt",NR/500);print > outfile}' ../$1_TapeList.txt
最佳答案
NR 从 1 开始,而不是 0。所以你可以像这样修复它
awk '{outfile=sprintf("file%02d.txt",(NR-1)/500) ...
关于linux - Bash awk 脚本 : document splitter issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42103058/