Linux 将文本文件分成两等份
我想把一个目录中的所有文本文件分成两个相等的两半。我尝试了下面的代码,但不起作用Linux 将文本文件分成两等份,linux,bash,file,split,directory,Linux,Bash,File,Split,Directory,我想把一个目录中的所有文本文件分成两个相等的两半。我尝试了下面的代码,但不起作用 d=2 for file in /home/user1/Documents/files/*.txt; do l=$(wc -l < "$file") #was l= wc $file | awk {'print $1'} echo $l sp=$((l/d)) #was sp = $((l/d)) echo $sp split -l $sp $file $file. done d=2
d=2
for file in /home/user1/Documents/files/*.txt; do
l=$(wc -l < "$file") #was l= wc $file | awk {'print $1'}
echo $l
sp=$((l/d)) #was sp = $((l/d))
echo $sp
split -l $sp $file $file.
done
d=2
对于/home/user1/Documents/files/*.txt中的文件;做
l=$(wc-l<“$file”)#was l=wc$file | awk{'print$1'}
回音$l
sp=$((l/d))#是sp=$((l/d))
echo$sp
拆分-l$sp$文件$文件。
完成
这一行
l= wc $file | awk {'print $1'}
应该是
l=$(wc -l < "$file")
l=$(wc-l<“$文件”)
No,等号两边都不应该有空格,最好是l=$(wc-l<“$file”)
awk也不需要了。。。因为wc
不会打印文件名,或者按照我的建议调用它时不会打印字数和字符数。l
将包含由wc-l<“$file”
生成的前导空格,这不应该是一个问题,只是需要记住的一点。删除指定“拆分”的行上的空格。也。考虑将变量<代码>拆分< /代码>作为<代码>行<代码>,因此它不会与命令<代码>拆分< /代码>混淆。此外,考虑奇数行的文件,当你除以2时会发生什么,你可能需要添加1,以确保你不会得到3个“一半”。:-)已将split更改为sp,但分区不起作用。是否删除了=?请发布更新的代码,以便我们查看到目前为止您拥有的内容。