linux把二进制文件分为两段,Linux下二进制文件的分割与合并

if [ -z $Filename ];then

echo "Error:The file name can not be empty"

exit

fi

#输入待合并文件的个数

echo "Please enter the number of subfiles:"

read Subfilenum

if [ -z $Subfilenum ];then

echo "Error:The number of subfiles can not be empty"

exit

fi

echo $Subfilenum | grep '^[0-9]\+$' > /dev/null

if [ $? -ne 0 ];then

echo "Error:Input must be a number"

exit

fi

if [ $Subfilenum -eq 0 ];then

echo "Error:The number of subfiles can not be zero"

exit

fi

#合并文件

i=1

Newfile=$Filename\.bak

while [ $i -le $Subfilenum ]

do

Subfilename=$Filename$i

if [ -e $Subfilename ];then

echo "$Subfilename done!"

cat $Subfilename >> $Newfile

i=`expr $i + 1`

else

echo "Error:$Subfilename does not exist"

rm -rf $Newfile

exit

fi

done

echo "Subfiles be merged into $Newfile"

echo "Success!"

用这两个脚本完成对file的分割、合并:

[root]# ./ddf.sh file

The file size is 116616 Byte

Plese enter the subfile size(KB):

60

file will be divided into 2

file1

记录了60+0 的读入

记录了60+0 的写出

61440字节(61 kB)已复制,0.0352612 秒,1.7 MB/秒

file2

记录了53+1 的读入

记录了53+1 的写出

55176字节(55 kB)已复制,0.0316272 秒,1.7 MB/秒

file has been divided into 2

Done !

[root]# ls

caf.sh  ddf.sh  file  file1  file2

[root]# ./caf.sh

Please enter file name:

file

Please enter the number of subfiles:

2

file1 done!

file2 done!

Subfiles be merged into file.bak

Success!

[root]# ls

caf.sh  ddf.sh  file  file1  file2  file.bak

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值