Linux下shell编程实例
read -p "input a file:" filename
if [ -b $filename -o -c $filename ]then
cp $filename /dev/
fi
2.编写一个脚本,进行简单的减法运算,要求提示输入变量
#!/bin/bash
read -p "input a number:" num1
read -p "input another number:" num2
let "num3=num1-num2"
echo $num3
3.把某个目录下的文件扩展名改为bat,再以时间为文件名压缩打包存放到某个目录。
#!/bin/bash
for file in $(ls $1)
do
new_file=${file%.*}.bat
mv ./$1/$file ./$1/$new_file
tmp=$(date +%y)
tar cvf ./$tmp.tar ./$1
done
4.判断一个数是不是完数。打印出1-1000之间的完数。 完数就是约数的和等于自身2倍的数。(6,28,496)
#!/bin/bash
sub()
{
i=1;
sum=0;
while [ $i -le $num ]
do
let "m=num%i"
if [ $m -eq 0 ]
then
let "sum=sum+i"
fi
let "i=i+1"
done
let "a=2*num"
if [ $a -eq $sum ]
then
echo $num
fi
}
num=1
while [ $num -le 1000 ]
do
sub
let "num = num+1"
done
5.在某个文件夹下查找含有指定字符串的文件
#!/bin/bash
for file in $(ls $2)
do
bname=$(grep -l $1 $2/$file)
basename $bname
done
6.添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。
#!/bin/bash
groupadd class1
for i in {9901..9930}
do
xx=$(echo $i | sed s/99//);
useradd -g class1 std$xx -p ""
done
7.设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其\中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。
#!/bin/bash
for ((i=1;i i++))
do
mkdir -p /usrdata/user$i
cd /usrdata
chmod 754 user$i
done
8. 写一个脚本,利用循环计算10的阶乘
#!/bin/sh
factorial=1
for a in `seq 1 10`
do
factorial=` expr $factorial \* $a `
done
echo "10! = $factorial"
9.删除当前目录下大小为0的文件
#/bin/bash
for filename in `ls`
do
if test -d $filename
then b=0
else
a=$(ls -l $filename | awk { print $5 })
if test $a -eq 0
then rm $filename
fi
fi
done
相关文章
- [Linux] linux文件系统学习
- Linux命令总结
- 利用putty软件连接虚拟机中linux操作系统
- Linux下查看某目录或指定文件大小的命令
- linux根据进程号PID查找启动程序的全路径
- 【Linux基础】文件处理实例
- Linux中通过mount或smbmount直接挂接Windws中文共享目录
- Linux下shell编程实例
- L79.linux命令每日一练 -- 第11章 Linux系统管理命令 -- sar和chkconfig
- L63.linux命令每日一练 -- 第九章 Linux进程管理命令 -- runlevel、init和service
- L62.linux命令每日一练 -- 第九章 Linux进程管理命令 -- strace和ltrace
- L57.linux命令每日一练 -- 第九章 Linux进程管理命令 -- ps和pstree
- 嵌入式linux开发,Linux下访问PHY芯片寄存器,获取phyID号,获取phy的link状态
- linux parted非交互式分区实例 —— 筑梦之路
- linux下常用压缩命令 tar压缩Linux解压 压缩Linux压缩Ubuntu压缩centos压缩解压gz txt.gz
- Linux c编程实例_例子
- Linux 系统管理命令:时间、进程、网络、磁盘、关机重启等 & top命令用法详解
- linux服务篇-Firewalld服务