shell編程基礎知識

    1、shell的輸入輸出參數
#!/bin/sh
while read line
do
echo $line
done < $1
    2、if語句的使用
#!/bin/sh
#echo $*
#echo $1
#echo $2
if [ "$1" = "wsm" ];then
echo "wsm"
elif [ $1 -eq 3 ];then
        echo "1 param is 3"
fi
    3、while語句的使用
#!/bin/sh
while [ 1 -lt 2 ]
do
echo "TEST"
sleep 1
done
    4、數組的使用

    5、shell中數值計算(加減乘除等)
      例子:
          expr 24 \* 88    (計算24乘以88)
    6、date命令的使用(時間轉換)
       例子:
date +%s   (當前時間和1970年時間的秒數)
date -d @date -d @1348790595   (時間的秒數轉換爲標準可讀格式的時間)
    7、sed命令使用
         例子:
sed -i '/efg/d' a   (刪除a文件中的efg)
sed 's/abc/MQ/g' a  (替換a文件中的abd爲MQ)
sed 's/\<abc\>/MQ/g' a
sed 's/\<abc\>/MQ/g' a
sed 's/^\<abc\>/MQ/g' a
    8、awk命令的使用
        例子:
ps -ef|grep "postfix"   (查找含有postfix的值)
ps -ef|grep "postfix" |grep -v "grep"  (查找含有postfix的值,過濾含有grep的值)
ps -ef|awk '{print $8}'|grep "postfix" |grep -v "grep"  (同上,打印第8個域值)
ps -ef|awk -F ':' '{print $2}'|awk -F '?' '{print $1}' |grep "12" (以冒號、問號分隔,打印第2個和第8個域值)
    9、shell腳本讀取文件

    10、進制轉換:
        例子:
echo 'obase=16; ibase=8; 12'|bc (把12這個值從16進制轉換爲8進制)
echo $((16#12))   (把16進制12轉換爲10進制的值)
發佈了7 篇原創文章 · 獲贊 14 · 訪問量 32萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章