国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
自己寫的一段腳本,使用到的命令 --- 經(jīng)常使用的
看: http://www.tsnc.edu.cn/default/tsnc_wgrj/doc/abs-3.9.1_cn/html/
1. 讀取文件中的每一行進行處理:
cat $FileName | while read line ;
do
echo $line .....其他自己處理的代碼
done
2.截取一行字符串部分內(nèi)容:
awk -F'分割符' '{print $0}'  -- $0自己按照想要截取的第幾個部分自己調(diào)整
3.進行排序:sort , 具體的命令介紹: http://www.360doc.com/showWeb/0/0/11641690.aspx
4.統(tǒng)計出現(xiàn)的次數(shù): uniq -c
5. if [  ] ; then
fi
如果在if中有多個條件,如 在1135到1257之間,或者大于1505,可以這么寫:
currenttime=`date +%H%M%S`
if  [ $currenttime -gt 113500  -a  $currenttime -lt 125700 ] || [ $currenttime -gt 150500 ]   ; then
fi
6. 暫停: sleep 秒數(shù)
7.函數(shù):
函數(shù)的括號中沒有參數(shù)說明,和主程序一樣,用$N來獲取第幾個參數(shù)
函數(shù)返回值:通過最后printf來返回
好像函數(shù)中無法輸出到屏幕(用echo)
8.參數(shù)說明:
$#:參數(shù)總數(shù)
$0                 正在被執(zhí)行命令的名字。對于shell腳本而言,這是被激活命令的路徑
$n                 該變量與腳本被激活時所帶的參數(shù)相對應(yīng)。n是正整數(shù),與參數(shù)位置相對應(yīng)($1,$2...)
$*                 所有這些參數(shù)都被雙引號引住。若一個腳本接收兩個參數(shù),$*等于$1$2
$@                 所有這些參數(shù)都分別被雙引號引住。若一個腳本接收到兩個參數(shù),$@等價于$1$2
$?                 前一個命令執(zhí)行后的退出狀態(tài)
$$                 當(dāng)前shell的進程號。對于shell腳本,這是其正在執(zhí)行時的進程ID
$!                 前一個后臺命令的進程號
9.引用其他shell中的函數(shù)
通過“ .(空格)shell文件名”,這樣就可以調(diào)用其它shell腳本中的函數(shù)了
10. 腳本的調(diào)試:
腳本調(diào)試用: 執(zhí)行的時候這么執(zhí)行: sh -x 腳本
這樣會顯示每行命令,會將每行命令結(jié)果顯示出來
11. 在if判斷條件中,變量沒有加引號,引發(fā)的問題:[: too many arguments
腳本:
# 如果沒有啟動test,就啟動
result=`ps -ef | grep test.sh | grep -v grep `
if [ -z $result ] ; then
echo "not find test.sh, start it"
./test.sh &
fi
結(jié)果運行是報 too many arguments,
通過sh -x 進行調(diào)試發(fā)現(xiàn)結(jié)果是:
++ ps -ef
++ grep test.sh
++ grep -v grep
+ result='root      5216     1  0 15:45 ?        00:00:00 /bin/bash ./test.sh'
+ '[' -z root 5216 1 0 15:45 '?' 00:00:00 /bin/bash ./test.sh ']'
a.sh: line 10: [: too many arguments
shell在執(zhí)行的時候,把變量替換成值進行運算。如果不加引號,變成了一長串shell不認(rèn)識的符號,執(zhí)行出錯。
所以在這種情況下,一定要加引號,避免錯誤 (類似于以前寫宏,也是一定要加括號,不知道使用的人在哪里使用,萬一是嵌套的使用,一不小心就會錯誤)
12.case
case $marketid in
SS|SSL2|SZ|LZ|CF|HK|KJ|CM)
;;
*)
Usage
;;
esac
13.bash中,只有一維數(shù)組,沒有二維數(shù)組
來源: http://blog.chinaunix.net/u3/104386/showart_2194335.html
數(shù)組賦值方式:
(1) array=(var1 var2 var3 ... varN)
(2) array=([0]=var1 [1]=var2 [2]=var3 ... [n]=varN)
(3) array[0]=var1
arrya[1]=var2
...
array[n]=varN
計算數(shù)組元素個數(shù)或者長度:
(1) ${#array[@]}
(2) ${#array[*]}
了解了數(shù)組基礎(chǔ)語法,舉例說明,請看:
#!/bin/bash
NAMESERVERS=("ns1.www.net." "ns2.www.net." "ns3.www.net.")
# 得到數(shù)組長度
tLen=${#NAMESERVERS[@]}
# 循環(huán)數(shù)組
for (( i=0; i<${tLen}; i++ ));
do
echo ${NAMESERVERS[$i]}
done
在看一個復(fù)雜一點的例子,將文件內(nèi)容讀取到數(shù)組中:
#!/bin/bash
# 設(shè)置IFS將分割符 設(shè)置為 換行符(\n)
OLDIFS=$IFS
IFS=$'\n'
# 讀取文件內(nèi)容到數(shù)組
fileArray=($(cat file.txt))
# restore it
IFS=$OLDIFS
tLen=${#fileArray[@]}
# 循環(huán)顯示文件內(nèi)容
for (( i=0; i<${tLen}; i++ ));
do
echo "${fileArray[$i]}"
done
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
bash與source
linux Shell學(xué)習(xí)筆記第二天
推薦:Linux啟動Java程序jar包Shell腳本
Shell 腳本面試問題大全
一文學(xué)完Linux Shell編程(強烈建議收藏)
Shell編程基礎(chǔ)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服