设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 综合讨论区 —— LinuxSir.cn
›
shell进阶应用、shell编程
›
如何使用实现指定目录下文件夹的遍历与排序?? ...
返回列表
查看:
1447
|
回复:
8
如何使用实现指定目录下文件夹的遍历与排序??
[复制链接]
chinaliu123
chinaliu123
当前离线
积分
18
IP卡
狗仔卡
发表于 2007-1-10 16:07:55
|
显示全部楼层
|
阅读模式
比如在一个指定目录下存在20060101.tar和20060102.tar,如何实现按顺序解压这两个包?即先解20060101再解20060102??
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
lastart
lastart
当前离线
积分
913
IP卡
狗仔卡
发表于 2007-1-10 22:13:54
|
显示全部楼层
for (( i=20060101; i<=20060102; i++))
do
tar xf $i.tar
done
回复
支持
反对
使用道具
举报
显身卡
chinaliu123
chinaliu123
当前离线
积分
18
IP卡
狗仔卡
楼主
|
发表于 2007-1-11 08:12:20
|
显示全部楼层
指定目录下的文件夹名称事先并不清楚,需要遍历后才可以排序,楼上的太简单了。也许存在20050102、20060405,事先并不清楚。
回复
支持
反对
使用道具
举报
显身卡
Iambitious
Iambitious
当前离线
积分
339
IP卡
狗仔卡
发表于 2007-1-11 10:08:10
|
显示全部楼层
#!/bin/bash
touch sorttar.temp
for files in `ls $1/*.tar`;do
files=`basename $files`
echo ${files%\.tar} >> sorttar.temp
done
for files in `sort -g sorttar.temp`;do
tar -xvf ${files}.tar
done
rm sorttar.temp
复制代码
回复
支持
反对
使用道具
举报
显身卡
euler
euler
当前离线
积分
223
IP卡
狗仔卡
发表于 2007-1-15 13:32:41
|
显示全部楼层
find ./ -name *.rar | xargs -exec tar zxvf {} \;
回复
支持
反对
使用道具
举报
显身卡
euler
euler
当前离线
积分
223
IP卡
狗仔卡
发表于 2007-1-15 13:34:33
|
显示全部楼层
find ./ -name *.rar | xargs -exec tar zxvf {} \;
linux 倡导简洁高效, 凡事尽量用简单的方式去处理。除find以外,你也可以用ls和xarg来完成同样的任务。 当然还可以用tree命令来搞定。
回复
支持
反对
使用道具
举报
显身卡
Iambitious
Iambitious
当前离线
积分
339
IP卡
狗仔卡
发表于 2007-1-15 13:44:27
|
显示全部楼层
你的脚本没有排序过程,默认的排序是按照字典顺序的,而不是按照数值的顺序
比如
11111 12按照字典顺序
12 11111按照数值顺序
回复
支持
反对
使用道具
举报
显身卡
euler
euler
当前离线
积分
223
IP卡
狗仔卡
发表于 2007-1-15 14:39:34
|
显示全部楼层
加一个sort的管道过滤好了,呵呵sort默认按字典排序。 加上-n参数按数字排序
回复
支持
反对
使用道具
举报
显身卡
Iambitious
Iambitious
当前离线
积分
339
IP卡
狗仔卡
发表于 2007-1-15 15:16:11
|
显示全部楼层
sort -n 排序,需要取出文件名里面的数字,如果一行想搞定的可能需要用awk巴
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
开源软件专题讨论
Debian Linux
Gentoo Linux
Linux 基础讨论区(新手速成)
Redhat/Fedora/CentOS Linux
Ubuntu Linux 专题讨论
Linux 输入开发与研究
Archlinux讨论区
LFS(LinuxfromScratch)
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表