您的位置:首页 > 运维架构 > Shell

SHELL编程实例

2015-08-22 10:48 711 查看
1、在home目录下新建100个目录,从a1开始,,,,到a100。

for i in 'seq 100'
do
mkdir a$i
done


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

find ~ -size -5 -type f -maxdepth 1 | xargs tar zcvf backup.tar.gz


3、写一个程序,可以将/et/passwd的第一列取出,而且每一列都以一行字符串“the 1 account is “root””来显示

awk -F':' '{print "the 1 account is "$1}' /etc/passwd


4、编写一个程序,他的作用是先查看一下/root/test/logical这个名称是否存在,若不存在,则创建一个文件。使用touch来创建,创建完成后离开;如果存在的话,判断该名称是否为文件,若为文件则将之删除后新建一个目录。文件名为loglical,之后离开;如果存在的话,而且该名称为目录,则删除此目录。

if [! -e /root/test/logical]
then   touch logical
elif [-f /root/test/logical]
then rm -f /root/test/logical && mkdir /root/test/logical
elif [-d /root/test/logical]
then rm root/test/logical
fi


5、编写一个shell脚本,从键盘读入10个数,显示最大值和最小值。

=> cat hh.sh
#! /bin/bash
printf "Enter 10 number: "
read
biggest=$(echo "$REPLY" | tr ' ' '\n' | sort -rn | head -n1)
smallest=$(echo "$REPLY" |  tr ' ' '\n' | sort -rn | tail -n1)
echo "Biggest number:  $biggest"
echo "Smallest number:  $smallest"
--------------------------------------------------
=> sh hh.sh
Enter 10 number: 1 2 3 4 5 6 7 8 9 0
Biggest number:  9
Smallest number:  0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: