一个简单的shell练习题

回复 收藏
编写一个脚本,自动将用户主目录下所有小于5KB的文件打包成XX.tar.gz.(提示:用ls,grep,find等命令,文件一般指普通文件)


2016-02-24 00:09 举报
已邀请:
0

wangzai

赞同来自:

#! /bin/bash
cd /root/test/
for i in `ls`;do
        if [ -f $i ];then
                a=`du -sh $i |awk -F' ' '{print $1}'|awk -F'.' '{print $1}'|sed 's/[^0-9]//g'`
                if [ $a -lt 5 ];then
                        tar -zcvf /root/test/$i.tar.gz $i
                fi
        fi
done
0

kw是id

赞同来自:

#!/bin/bash
dir=/tmp/bak
[ -e $dir ] || /bin/mkdir $dir
list=`find $HOME -type f -size -5k|awk -F '/' '{print $3}'`
for i in $list
do
  cp $i $dir
done
tar -zcf /tmp/bak.tar.gz $dir
if [ $? -ne 0 ]
then
   echo "打包失败,请检查源目录和目标目录"
   exit 1
fi

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: