Linux系統(tǒng)命令
1. ls
查看某個(gè) 目錄下 所有文件的大小總和
ls -lR| awk 'BEGIN{size=0;} /^[-l]/{size+=$5;print $0;} END{print "all size:"size/1024/1024 "M"}'
解釋:awk的 中間部分 引用了 正則表達(dá)式, /^[-l]/{size+=$5;print $0;}
2. 腳本中執(zhí)行命令:
/usr/local/bin/cmd -d 2>>/tmp/info.txt &
2.1 后臺(tái)符號(hào) &一定要放在整個(gè)命令最后网严。
2.2 >,>>一定緊跟著重定向文件
2.3 如果是 文件輸出 1 stdout黍判,2 stderr 要重定向到別的文件绸贡,也是緊跟>,>>符號(hào)。
如果 cmd 命令包含參數(shù)条摸, 需要與>> 用空格隔開
cmd 2 >>/tmp/info.txt /*這里2 就是cmd的參數(shù)*/
2.4 如果想讓stderr也跟 stdout一樣輸出到文件拆火,使用
/usr/local/bin/cmd >file 2>&1
3. tcpdump
抓包:tcpdump -i eth0 -C 5 -w eth0.pcap
-C 5 每個(gè)包大小為5M抗悍。
4. pmap
查看進(jìn)程占用內(nèi)存:
pmap -x pid | grep 'anon' | awk 'BEGIN{}{sum += $2} END {print sum}'
5. find
find . -regextype posix-egrep -regex ".*utm_(uids|extend|event).*"
find查找匹配正則表達(dá)式
6. top
top -b -n 1 -d 1 >info.txt
將top命令的第一幀寫入 info.txt文件中
-n 1一幀
-d 1間隔1s
-b batch mode 只有這種模式才能寫入文件
-d 1是參數(shù)亡笑,所以 與 >之間要加個(gè)空格,否則解析成 1 stdout祠乃,-d 就沒(méi)有option梦重,命令解析錯(cuò)誤。
7.sed
sed "s/str1/str2/g" file
將 file文件中每行的 str1替換為str2輸出
sqlite 數(shù)據(jù)庫(kù)命令
1. 查詢命令
每個(gè)數(shù)據(jù)庫(kù)中都有一個(gè)表sqlite_master ,里面表明存在有哪些表亮瓷,哪些索引琴拧?用來(lái)判斷某個(gè)表 是否存在
select * from sqlite_master where (type='table') and (name='table名')
版本管理命令
svn 命令
1. status命令
svn st | grep ^M | awk '{ print $2}' | xargs md5sum
求修改的文件的MD5碼,一般比對(duì)使用
2. merge命令嘱支,
svn merge -r 1:2 URL .
(1,2] 將 URL 指定的版本的 1版本提交后到2版本的改變 合并到當(dāng)前版本
3. diff命令
svn diff -r N:M
(N,M]顯示 版本N到版本M之前的更改
最后編輯于 :2017.11.14 18:19:52
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者