LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1372|回复: 9

求助:如何按照指定顺序解压多个文件?

[复制链接]
发表于 2009-12-8 16:22:42 | 显示全部楼层 |阅读模式
我下载了18个分卷压缩的rar文件,以下是下载地址,而且由于上传者把分卷压缩文件的顺序编排错误了,正确的顺序应该是下面下载地址的先后顺序:
http://bbsrrs1.joy.cn/D0E4178484 ... 1292337438782_7.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1140011846016_8.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1435238349155_9.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 484770494224_10.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1214789936068_1.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1312616575376_2.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2101538758605_3.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2135732311803_4.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1217571161380_5.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2255016438493_1.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2301152673499_2.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 1235539149407_3.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2432772133282_4.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2482953926053_5.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2534581631472_6.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 2585117195001_7.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 3134191766334_8.rar
http://bbsrrs1.joy.cn/D0E4178484 ... 3137474707505_9.rar

现在需要把它们解压。可是下载后发现文件名都是形如lion_2006121311292337438782_7.rar的样子,没有办法用Archive Manager进行解压,用unrar x也不行。尝试了多次后,发现只有把这18个文件按照下载地址的顺序一个一个地重新命名,比如把lion_2006121311292337438782_7.rar命名为1.rar,把lion_200612131140011846016_8.rar命名为2.rar,如此下去(虽然比较麻烦,)但总还可以正常解压。此法太笨拙,很费时。

现在我想问问各位高人:能否有更简单的方法,不必把每个文件重新命名,只要有下载地址文件就行呢,比如把这18个rar文件和上述下载地址(可以保存为address.txt文件)都放在同一个目录下,然后使用某个shell命令就可以呢?  谢谢先!
发表于 2009-12-8 16:40:23 | 显示全部楼层
应该用 cat 就可以吧,都忘记了。看文件名,按序号大小排正好,那么, cat *.rar > lion.rar 然后打开 lion.rar 就可以了。如果不是那个序列的话,只好 cat xxxx.rar xxxx.rar.xxxx.rar ....... > lion.rar 了。
回复 支持 反对

使用道具 举报

发表于 2009-12-8 16:48:11 | 显示全部楼层
cat b |cut -d"/" -f10|xargs unrar -e

b的内容
  1. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121311292337438782_7.rar
  2. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_200612131140011846016_8.rar
  3. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121311435238349155_9.rar
  4. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121311484770494224_10.rar
  5. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_200612131214789936068_1.rar
  6. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312616575376_2.rar
  7. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312101538758605_3.rar
  8. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312135732311803_4.rar
  9. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_200612131217571161380_5.rar
  10. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312255016438493_1.rar
  11. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312301152673499_2.rar
  12. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_200612131235539149407_3.rar
  13. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312432772133282_4.rar
  14. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312482953926053_5.rar
  15. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312534581631472_6.rar
  16. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_2006121312585117195001_7.rar
  17. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_20061213134191766334_8.rar
  18. http://bbsrrs1.joy.cn/D0E4178484E4BC4CCF552F7E297B9AB7/BBS/up_file/2006/12/13/lion_20061213137474707505_9.rar
复制代码

我是菜鸟,错了勿怪
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-8 17:19:14 | 显示全部楼层
我试过了,2,3楼的方法不行,注意,这18个文件不是相互独立的,是分卷打包的,必须按照下载地址的先后顺序更名后才能正常解压的!
回复 支持 反对

使用道具 举报

发表于 2009-12-8 17:46:42 | 显示全部楼层
Post by zhiyizhi;2053875
我试过了,2,3楼的方法不行,注意,这18个文件不是相互独立的,是分卷打包的,必须按照下载地址的先后顺序更名后才能正常解压的!

我的办法不行是因为你用的是 rar 的分卷功能,而不是用 splite ,3 楼的问题在于 unrar 解压时判断只会单纯的增加文件名中最后的数字,没那么智能。

看来要用 for 来改名了。。。。 不过3楼的那个读文件名的方法确实不错。
回复 支持 反对

使用道具 举报

发表于 2009-12-9 11:13:34 | 显示全部楼层
先把地址按顺序放到一个文件,下面用的是config
然后执行

a=1; cat config |while read L;do wget -v "$L" -O $a.rar; ((a++));done;unrar 1.rar
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-10 10:58:11 | 显示全部楼层
6楼的方法其实我也知道,就是边下载边更名。但是我已经使用downthemall下载好了这些文件——用wget下载太慢了。而且已经保存了文件的先后顺序列表(比如存为order文件)。我希望能够用一个shell命令把这些文件按照order的顺序自动更名。

目前我还没有找到合适的方法。5楼提到用for循环,但是我不会呀!
回复 支持 反对

使用道具 举报

发表于 2009-12-10 11:20:14 | 显示全部楼层
rar分卷压缩包,你只要解压一个包就行了,rar会自动寻找对应顺序来解的。
比如 我三个文件:test.part1.rar test.part2.rar test.part3.rar
只要unrar x test.part1.rar 即可。

对你下载的文件,你需要改名,把文件名改成一样的,除了数字。比如
test.1.rar test.2.rar test.3.rar ;也是可以正常解压的。
回复 支持 反对

使用道具 举报

发表于 2009-12-10 15:20:06 | 显示全部楼层
Post by zhiyizhi;2054381
6楼的方法其实我也知道,就是边下载边更名。但是我已经使用downthemall下载好了这些文件——用wget下载太慢了。而且已经保存了文件的先后顺序列表(比如存为order文件)。我希望能够用一个shell命令把这些文件按照order的顺序自动更名。

目前我还没有找到合适的方法。5楼提到用for循环,但是我不会呀!


a=1; cat order |while read L;do mv "$L" -O $a.rar; ((a++));done;unrar 1.rar
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-10 22:07:23 | 显示全部楼层
我安装了krename后,过程稍微简单些了,至少比手动更名快了很多。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表