1. 磁盤使用情況
du -h? 查看當前用戶每個文件的大小,格式化顯示
du -h --max-depth=1? 當前各個目錄下的總大小
du -sh 查看總的大小
df? -h? 磁盤使用情況
iostat -xm 3 磁盤的讀寫情況
2. VI常用命令
esc切換文件讀寫狀態,I鍵插入,O鍵追加
:q! 強制退出
:wq 保存后退出
:x? 保存后退出
G 到文件尾部
1G到文件首 或者 gg
0行首
$行尾
ctrl + f 向文件尾翻一頁
ctrl + b向文件首翻一頁
/patten 從光標開始處,向文件尾搜索patten
?patten 從光標處開始,向文件末搜索patten
: s /p1 /p2 /g 將當前行中所有p1全部替換為P2
:n1,n2? s /p1 /p2 /g 將第n1到n2行中所有的p1全部替換為p2
:g /p1 /s // p2 /g 將文件中的所有p1替換為p2
dd 刪除一行
x 刪除一個字符
3. 查看機器負載情況
?top ? ?按c鍵可以查看進程的描述信息
4. 查看機器信息
uname? 查看系統情況
ifconfig 查看網絡IP
查看外部IP: curl ifconfig.me
5. 基本命令
pwd 當前路徑地址
whereis 命令? 命令所在的路徑
cd 目錄切換 如cd .. 切換到上層目錄
rm ?刪除文件或目錄 ?-i 交互式參數,需用戶確認
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?–r 目錄名:這個操作可以連同這個目錄下面的子目錄都刪除
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-f 文件/目錄:這個操作可以進行強制刪除
rmdir 刪除目錄?? - p 遞歸刪除目錄
cut命令
例如?49-20130106-151719-1357293025547
獲取前面的49字符串,可以使用 cut -d "-" -f 1
cp 文件目錄復制
?cp -r dir1 dir2 復制整個目錄: 若目錄dir2存在,則將目錄dir1,及其所有文檔和子目錄,復制到目錄dir2下,新目錄名稱
為dir1. 若目錄dir2不存在,則將dir1,及其所有文檔和子目錄,復制為目錄dir2.
mkdir ?mydir 創建目錄mydir
mv ?conf ?conf_bak ?? 使用mv命令來為文件或目錄改名或將文件由一個目錄移入另一個目錄中
chmod u+x test.sh 改變文件的訪問權限,這里是給腳本增加執行權限
echo test >> $(date -d "today" +"%Y%m%d_%H%M%S").txt
sed -i "s/ServiceIP=/#ServiceIP=/g" `grep "ServiceIP=" -rl? resource/config.ini`
-z “str” :判斷字符串為空
-n "str":判斷字符串不為空
ln -s ?/mnt/disk/0/keyword_data/ /home/recsys/wlb/keywordinterest/data
6. 查找命令
grep ?"需要查找的文字" ? ?查找的文件 ? 如:grep "hello,world" ?info.log
find pathname -options [-print -exec -ok ...]
7.打包
?tar -cvf ? ? etc.tar /etc ? ? ? ? ? ? ? ?僅打包,不壓縮!
?tar -zcvf ? ?etc.tar.gz /etc ? ? ? ? ?打包后,以 gzip 壓縮
tar -xvf tec.tar.gz ? ? ? ? ? ? ? ? ? ? ? 解包并解壓縮
8. scp and ssh
ssh -A -p56789 usrname@120.200.122.123
scp -P56789 ?./test.tar.gz ? usrname@120.200.122.123:/home/myfolder/
SCP -r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。
?? ? ? ? -p Preserves modification times, access times, and modes from the original file.
9 maven使用
mvn clean 清理target
mvn compile? 編譯項目
mvn package -Dmaven.test.skip=true??或者mvn -Dtest.skip package 打包跳過單元測試
mvn install ?-Dmaven.test.skip=true ?安裝跳過單元測試
mvn deploy 部署上傳到服務器上去
mvn dependency:copy-dependencies ?拷貝依賴文件到文件夾
10進程相關
ps -f -udir | grep "cron" 搜索dir用戶下所有包含cron字符的所有進程
killall -9 ?"rsync" ?殺死所有包含rsync字符的所有進程
kill -9 1099 ?殺死進程編號為1099的進程
ps -ef|grep sv_monitor|grep -v grep|cut -c 9-15|xargs kill -9 殺死包含sv_monitor的進程
11 ls?
ls -t1 info.log.* | head -n1 找出最后修改的哪一個log文件
ls -l | wc -l 統計文件個數
-t sort by last modification time
-1 list one file per line
head: -n N print the first N lines
12. md5sum
? ?man md5sum | col -b > md5sum.txt
? ?md5sum md5sum.txt
? ?md5sum md5sum.txt > hashfile
? ?md5sum –c ?hashfile ?? ?# 驗證hashfile中包含的md5值和對應的文件,在執行該命令時是否仍然匹配, 如果此時test.c被修改了,該命令將返回不匹配的警告.
13. 查看linux版本
lsb_release -a?
uname -a
14. lsof?列出當前系統打開文件的工具
每行顯示一個打開的文件,若不指定條件默認將顯示所有進程打開的所有文件。lsof輸出各列信息的意義如下:
COMMAND:進程的名稱
PID:進程標識符
USER:進程所有者
FD:文件描述符,應用程序通過文件描述符識別該文件。如cwd、txt等
TYPE:文件類型,如DIR、REG等
DEVICE:指定磁盤的名稱
SIZE:文件的大小
NODE:索引節點(文件在磁盤上的標識)
NAME:打開文件的確切名稱
lsof??filename 顯示打開指定文件的所有進程
lsof -a 表示兩個參數都必須滿足時才顯示結果
lsof -c string? ?顯示COMMAND列中包含指定字符的進程所有打開的文件
lsof -u username??顯示所屬user進程打開的文件
lsof -g gid 顯示歸屬gid的進程情況
lsof +d /DIR/ 顯示目錄下被進程打開的文件
lsof +D /DIR/ 同上,但是會搜索目錄下的所有目錄,時間相對較長
lsof -d FD 顯示指定文件描述符的進程
lsof -n 不將IP轉換為hostname,缺省是不加上-n參數
lsof -i 用以顯示符合條件的進程情況
15 crontab
基本格式 :
* * * * * command
分 時 日 月 周 ? ? 命令
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令
*/5 * * * * /home/dir/test/bin/test.sh > /dev/null ? 每五分鐘執行一次腳本
45 23 * * * /home/dir/test/bin/test.sh >
?
/dev/null 每天的23點45分執行一次腳本
16. 查看并發請求數及其TCP連接狀態
CLOSED:無連接是活動的或正在進行
LISTEN:服務器在等待進入呼叫
SYN_RECV:一個連接請求已經到達,等待確認
SYN_SENT:應用已經開始,打開一個連接
ESTABLISHED:正常數據傳輸狀態
FIN_WAIT1:應用說它已經完成
FIN_WAIT2:另一邊已同意釋放
CLOSE_WAIT:等待所有分組死掉
CLOSING:兩邊同時嘗試關閉
TIME_WAIT:另一邊已初始化一個釋放
LAST_ACK:等待所有分組死掉
Recv-Q:表示收到的數據已經在本地接收緩沖,但是還有多少沒有被進程取走, recv()
Send-Q: 對方沒有收到的數據或者說沒有Ack的,還是本地緩沖區.
$0 :當前處理行記錄?
$1: 第一個分段?
NF:每一行擁有的字段總數?
NR:當前awk處理的第幾行數據?
FS:目前的分割字符,默認是空格。
ifconfig?|?grep? "inet?addr" |sed? 's/^.*inet?addr://g' ? ?
?
bin=`dirname "$0"`
bin=`cd "$bin"; pwd`
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
