打包test目錄,排除其中全部子目錄中的.svn文件夾:html
# tar -zcf test.tar.gz test/ --exclude=.svn
# zip -qr test.zip test/ -x "**/.svn**"
npm安裝模塊時常常出現權限錯誤,能夠用下面的參數:java
# npm install --unsafe-perm=true --allow-root
在須要免密登陸的發起端執行,命令2中使用接收端的用戶名和IP:node
# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub [username]@[ip address]
安裝crontab,配置每6個小時向ntp服務器同步一次時間:npm
# yum -y install vixie-cron # crontab -e 0 */6 * * * /usr/sbin/ntpdate [ntp server ip] > /dev/null 2>&1
# sed -i "1 i [內容]"[path/to/file] #開頭插入一行
# sed -i "$ a [內容]" [path/to/file] #末尾插入一行
# sed -i "[行號] i [內容]" [path/to/file] #指定行前插入一行(行號從1開始)
# sed -i "[行號] a [內容]" [path/to/file] #指定行後插入一行
# sed -i "[行號] d" [path/to/file] #刪除指定行
# sed -i "/[關鍵字]/ i [內容]" [path/to/file] #匹配行前插入一行(全部匹配行都會操做)
# sed -i "/[關鍵字]/ a [內容]" [path/to/file] #匹配行後插入一行
# sed -i "/[關鍵字]/ d" [path/to/file] #刪除匹配行
# sed -i "s/[原內容]/[新內容]/" [path/to/file] #匹配替換(每一行只替換第一個匹配的)(/能夠用#或?代替防止與內容衝突)
# sed -i "s/[原內容]/[新內容]/g" [path/to/file] #匹配替換(替換全部匹配的)
# sed -i "[行號] s/[原內容]/[新內容]/g" [path/to/file] #只匹配替換指定行
# sed -i "[起始行號],[結束行號] s/[原內容]/[新內容]/g" [path/to/file] #匹配替換指定的範圍
# sed -i "/[關鍵字]/ s/[原內容]/[新內容]/g" [path/to/file] #只匹配替換匹配關鍵字的行
# sed -i "s/[原內容]/[新內容]/g" `grep "[原內容]" -l \`find -name config.xml\`` #與find和grep組合使用
# awk '{print $1}' filename #$1~$n 每行分隔的第n個字段;$0 整行內容;NF 字段總數
# awk '{print "字段1:"$1"\t字段2:"$2}' filename #格式化組合顯示
# awk -F ',' '{print $1}' filename #用逗號分隔,默認是空格分隔
# awk -F '[,#]' '{print $1}' filename #逗號或#號分隔
# awk -F '[,#]+' '{print $1}' filename #1個或多個,#分隔,好比,,或###
# awk -F 'GET|HTTP' '{print $1}' filename #以GET或HTTP分隔
# awk '{print "\""}' filename #print輸出雙引號
# awk '{print "'\''"}' filename #print輸出單引號
# awk '{if(NR==1||(NR>2&&NR<4)) print $0}' #行數=1或3>行數>2;其餘還有>=,<=,!=;如有多個文件NR會遞增疊加,不遞增單獨計算的是FNR
# awk 'BEGIN {count=0;print "開始統計行數"} {print $0;count++} END{print "統計結束,行數是",count}' #自定義變量,統計行數,打印每行內容
# awk '/^#/' filename #正則匹配,以#開頭的行
# awk '/^#/ {print $0}' filename #匹配後打印整行內容,與上一個表達式同義
# awk '!/^#/' filename #不以#開頭的行
# awk '{if($0~/^1/) print "第"NR"行以1開頭";else if($0~/^2/) print "第"NR"行以2開頭";else print "第"NR"行以其餘開頭"}' filename #if else語句,相對於~,!~表示不匹配
# sed -i "s/\xEF\xBB\xBF//" `grep -Ilr $'^\xEF\xBB\xBF' .` #查到當前文件夾全部子目錄中包含BOM的文件,而後刪除BOM
注意:^M在Linux命令行輸入的方式是 ctrl+v,ctrl+m;vim
# sed -i "s/^M//" `grep "^M" -lr .` #查到當前文件夾全部子目錄中包含^M的文件,而後刪除
:set ff #查看fileformat :set ff=dos #配置fileformat爲dos :set ff=unix #配置fileformat爲unix :%s/^M$//g #刪除全部的^M(^M=ctrl+v,ctrl+m)
:sort #先排序 :g/^\(.*\)$\n\1$/d #刪除重複行
系統頻繁大量讀寫文件會形成內存buff/cache太高,好比:windows
此時能夠用如下命令進行清理:瀏覽器
sync;echo 1 >/proc/sys/vm/drop_caches 清理pagecachebash
sync;echo 2 >/proc/sys/vm/drop_caches 清理dentries和inodes服務器
sync;echo 3 > /proc/sys/vm/drop_caches 都清理cookie
# ps -mp [pid] -o THREAD,tid,time
# ps -ef | grep [關鍵字] | grep -v grep | awk '{print $2}' | xargs kill -9
FGC監控,導出堆棧信息:
# jstat -gct [pid]@[ip] 1000 10 # jmap -dump:format=b,file=[path/to/file] [pid] # jstack -l [pid] > [path/to/file]
# cd -
# ll /mydata # cd !$ cd /mydata/
# curl -OL "download url"
windows下用瀏覽器訪問jdk的網址,好比:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
找到要下載的包,右鍵,複製連接地址,以下圖:
而後在Linux命令行:
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" [複製的地址]
或
curl -H "Cookie: oraclelicense=accept-securebackup-cookie" -H "Connection: keep-alive" -O -L "[複製的地址]"
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 # sed -i "$ a export LANG=zh_CN.UTF-8" /etc/profile
# sed -i '$ a export HISTTIMEFORMAT="%F %T `whoami` "' /etc/bashrc
持續更新...