###求和
#!/bin/bash
read a
read b
echo $[$a+$b]
###求三个数中的最小者
#!/bin/bash
a=123
b=456
c=789
printf "%d\n%d\n%d" a b c|sort|head -n 1
###求和(from 1 to 100)
#!/bin/bash
sum=0
for i in $(seq 1 100); do
sum=$[sum+$i]
done
echo $sum
###菜单
select opt in continue finish
do
case $opt in
continue) echo;;
finish) exit;;
esac
done
###Parameters 我不懂倒三角是什么意思..
sunus@ArchRocks:/tmp$ cat a.sh
#!/bin/bash
echo "Parameters:" $@
echo "Parameters Lenght", ${#}
if [ ${#} -gt 6 ]; then
echo "Too many Parameters"
fi
sunus@ArchRocks:/tmp$ ./a.sh arg1 arg2 arg3 arg4
Parameters: arg1 arg2 arg3 arg4
Parameters Lenght, 4
sunus@ArchRocks:/tmp$ ./a.sh arg1 arg2 arg3 arg4 arg5 arg6 arg7
Parameters: arg1 arg2 arg3 arg4 arg5 arg6 arg7
Parameters Lenght, 7
Too many Parameters
###Fib 10
sunus@ArchRocks:/tmp$ cat fib.sh
#!/bin/bash
ret=0
fib()
{
if [ $1 -le 2 ]; then
ret=$[ret+1]
else
fib $[$1-1]
ret=$[ret+$?]
fib $[$1-2]
ret=$[ret+$?]
echo "finish: fib($[$1-1]) + fib($[$1-2])"
fi
}
fib $1
echo $ret
sunus@ArchRocks:/tmp$ ./fib.sh 10
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(5) + fib(4)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(6) + fib(5)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(5) + fib(4)
finish: fib(7) + fib(6)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(5) + fib(4)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(6) + fib(5)
finish: fib(8) + fib(7)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(5) + fib(4)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(6) + fib(5)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(2) + fib(1)
finish: fib(4) + fib(3)
finish: fib(2) + fib(1)
finish: fib(3) + fib(2)
finish: fib(5) + fib(4)
finish: fib(7) + fib(6)
finish: fib(9) + fib(8)
55
[17:14]:cat month.sh
#!/bin/bash
dateString="2013-$1-01"
echo $(date --date $dateString +"%B")
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:14]:./month.sh 11
November
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:14]:./month.sh 12
December
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:14]:./month.sh 01
January
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:14]:./month.sh 13
date: invalid date '2013-13-01'
##Execise 6
[17:23]:cat 99.sh
#!/bin/bash
for a in `seq 1 9`; do
for b in `seq 1 9`; do
if [ $b -le $a ]; then
echo -en "$[$b * $a]\t"
fi
done
echo -e "\n"
done
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:23]:./99.sh
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
6 12 18 24 30 36
7 14 21 28 35 42 49
8 16 24 32 40 48 56 64
9 18 27 36 45 54 63 72 81
[17:50]:cat palindrome.sh
#!/bin/bash
check () {
len=${#1}-1
for i in `seq 0 $[len/2 - 1]`; do
if [ "${1:$i:1}" != "${1:$[$len-$i]:1}" ]; then
echo "NO"
return
fi
done
echo "YES"
}
check $1
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:50]:./palindrome.sh sunus
YES
sunus@ArchRocks[/tmp]
sunus@ArchRocks[17:51]:./palindrome.sh vivian
NO
sunus@ArchRocks[/tmp]
- 进入目录,不存在就创建
- 打包/etc目录
alias move=mv