1、简单计算器
#! /bin/sh
while [ : ];do
read a op b
case $op in
"+")
c=$[a+b];;
"-")
c=$[a-b];;
"*")
c=$[a*b];;
"/")
c=$[a/b];;
*)
c=0;;
esac
echo "$a $op $b = $c"
done
2、求1 to n的和
#! /bin/sh
while [ : ];do
read a
b=$a
count=0
while [ $a -gt 0 ];do
count=$[a+count]
a=$[a-1]
echo $a
done
echo "1 to $b $count"
done
3、 将一目录下所有的文件的扩展名改变
#! /bin/bash
while [ : ];do
#获得当前目录路径,未用到,只是学习一下
basedir=`cd $(dirname $0); pwd -P`
echo $basedir
for file in *.*; do
mv $file ${$file%%.*}.bat
done
else
echo "Path is not dir"
done
4、编译当前目录下的所有.c文件
循环遍历当前目录下的.C文件,并将文件名或出错信息重定向到compile文件中,调用gcc编译,休眠2秒。
basename:作用为分离路径中的文件名。
#! /bin/bash
for file in *.c; do
echo $file
gcc -o $(basename $file .c) $file
sleep 2;
done > compile 2>&1
5、
打印root
可以使用可执行文件数
echo "root's bins: $(find ./ -type f | xargs ls -l | sed '/-..x/p' | wc -l)"
6、输出本机创建n个目录所用的时间
#! /bin/bash
read filenum
time (
for i in {1..$filenum } ; do
mkdir /tmp/ttt$i
done
)
7、打印本机的交换分区大小
free -m | sed -n '/Swap/p' | awk '{ print $2}'