练习9——脚本

练习9——脚本

1、编写脚本程序备份用户指定的文件,将文件备份到目录名 _backup中(若目录不存在则自动建立),备份文件的文件名格式为文件名_bak_年月日_时分秒。

  1 #! /bin/bash
  2 filename=$1
  3 dir=$2_backup
  4 if [ ! -d $dir ]
  5 then
  6         mkdir ./${dir}
  7 fi
  8 datetime=`date +%Y%m%d_%H%M%S`
  9 cp ${filename} ${dir}/${filename}_bak_${datetime}
 10 echo "finished!"
 
 个人错误总结:
 1、变量有多个字符取值的话一定要用{}${name}
 2、if----if if结尾对if,又些错了
 
 是
 	if   fi
 	if   fi
 	if   fi

2、编写一个shell脚本程序,它能根据输入的命令行参数采取不同的动作:如果是目录,则列出该目录中的文件;如果是可执行的文件,则用shell执行之;如果是可读的文件,则分屏显示其内容。

  1 #! /bin/bash
  2 #ex5.sh
  3 name=$1 
  4 if [ -d ${name} ]
  5 then
  6         ls $name
  7 elif [ -x ${name} ]
  8 then
  9         ./$name
 10 elif [ -r ${name} ]
 11 then
 12         cat $name
 13 fi
 14 echo "finished!"

3、.写一个脚本文件,该脚本运行时带用户名作为参数,在/etc/passwd文件中查找用户,如有,则输出“ in the /etc/passwd”;否则输出” no such user on our system”。

  1 #! /bin/bash
  2 #ex6.sh
  3 #
  4 username=$1
  5 for username in $*
  6 do
  7         if cut /etc/passwd -d: -f1|grep -q "^$username"
  8         then
  9                 echo "${username} in the /etc/passwd"
 10         else
 11                 echo "no such user on your system"
 12         fi
 13 done
 14 

4、 设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。

 1 #! /bin/bash
  2 #ex7.sh
  3 #
  4 for ((i=1;i<=50;i++))
  5         do
  6         mkdir /userdata/user$i
  7         chmod 754 /userdata/user$i
  8 done
  9 echo "finished!"
/
如果没有文件夹,需要自己创建,脚本无法自己创建不存在的文件夹,对吗?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值