Linux SSH常用命令合集

Linux ssh 常用命令

自動啓動

    /etc/rc.d/rc.local


crontab

    /sbin/service crond start      //啓動服務
    /sbin/service crond stop       //關閉服務
    /sbin/service crond restart    //重啓服務
    /sbin/service crond reload     //重新載入配置

    命令

    crontab -u //設定某個用戶的cron服務,一般root用戶在執行這個命令的時候需要此參數
    crontab -l //列出某個用戶cron服務的詳細內容
    crontab -r //刪除某個用戶的cron服務
    crontab -e //編輯某個用戶的cron服務

    基本格式 :
    *  *  *  *  *  command
    分 時   日  月  周   命令

    除了數字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*代表所有的取值範圍內的數字,"/"代表每的意思,"*/5"表示每5個單位,"-"代表從某個數字到某個數字,","分開幾個離散的數字。

    例子:

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小時重啓lighttpd

 * 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11點到早上7點之間,每隔一小時重啓lighttpd

 0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4號與每週一到週三的11點重啓lighttpd



目錄操作:
rm -rf mydir /*刪除mydir目錄*/
cd mydir /*進入mydir目錄*/
cd – /*回上一級目錄*/
cd .. /*回父目錄,中間有空格*/
cd ~ /*回根目錄*/

mv tools tool /*把tools目錄改名爲tool */
ln -s tool bac /*給tool目錄創建名爲bac的符號鏈接,最熟悉的應該就是FTP中www鏈接到public_html目錄了*/
cp -a tool /home/vpser/www /*把tool目錄下所有文件複製到www目錄下 */文件操作:
rm go.tar /* 刪除go.tar文件 */
find mt.cgi /* 查找文件名爲mt.cgi的文件 */
df –h /* 查看磁盤剩餘空間,好像沒這個必要,除非你太那個了 */

解壓縮:
tar xvf wordpress.tar /* 解壓tar格式的文件 */
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */
tar cf toole.tar tool /* 把tool目錄打包爲toole.tar文件 */
tar cfz vpser.tar.gz tool /* 把tool目錄打包且壓縮爲vpser.tar.gz文件,因爲.tar文件幾乎是沒有壓縮過的,MT的.tar.gz文件解壓成.tar文件後差不多是10MB */
tar jcvf /var/bak/www.tar.bz2 /var/www/ /*創建.tar.bz2文件,壓縮率高*/
tar xjf www.tar.bz2 /*解壓tar.bz2格式*/
gzip -d ge.tar.gz /* 解壓.tar.gz文件爲.tar文件 */
unzip phpbb.zip /* 解壓zip文件,windows下要壓縮出一個.tar.gz格式的文件還是有點麻煩的 */
下載:
wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/*下載遠程服務器上的文件到自己的服務器,連上傳都省了,服務器不是100M就是1000M的帶寬,下載一個2-3兆的MT還不是幾十秒的事 */
wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/* 繼續下載上次未下載完的文件 */
轉載請註明出處:VPS偵探 http://www.vpser.net
進程管理:
ps -aux /*ps 進程狀態查詢命令*/
ps命令輸出字段的含義:
USER,進程所有者的用戶名。
PID,進程號,可以唯一標識該進程。
%CPU,進程自最近一次刷新以來所佔用的CPU時間和總時間的百分比。
%MEM,進程使用內存的百分比。
VSZ,進程使用的虛擬內存大小,以K爲單位。
RSS,進程佔用的物理內存的總數量,以K爲單位。
TTY,進程相關的終端名。
STAT,進程狀態,用(R–運行或準備運行;S–睡眠狀態;I–空閒;Z–凍結;D–不間斷睡眠;W-進程沒有駐留頁;T停止或跟蹤。)這些字母來表示。
START,進程開始運行時間。
TIME,進程使用的總CPU時間。
COMMAND,被執行的命令行。

ps -aux | grep nginx /*在所有進程中,查找nginx的進程*/
kill 1234 /*1234爲進程ID,即ps -aux 中的PID*/
killall nginx /*killall 通過程序的名字,直接殺死所有進程,nginx爲進程名*/
Vim操作:
移動類的:
h/j/k/l: 左/下/上/右 移一格
w : 向後詞移動 (前面加數字移動多少個詞)
b : 向前詞移動 (前面加數字移動多少個詞)
e : 向後移到詞末
ge : 向前移到詞末
$ : 行末
0 : 行首
tx : 向右查找本行的x並移到那兒(大寫時向左)
33G : 移到文件的第33行
gg : 文件首行
G : 文件尾行
33% : 文件的33%處
H/M/L : 屏幕的首/中/尾行
zt/zz/zb : 當前行移到屏幕的首/中/底部
跳轉:
” : 回到跳轉來的地方
CTRL-O : 跳到一個 “較老” 的地方
CTRL-I : 則跳到一個 “較新” 的地方
查找:
/ : 向下查找(後加關鍵字)
? : 向上查找(後加關鍵字)
n : 下一條符合的記錄
編輯:
i : 轉換到插入模式
x : 刪除當前字符
. : 重複最後一次的修改操作(同PS裏ctrl+f執行濾鏡)
u : 撤銷操作
CTRL-R : 重做
p : 將刪除的字符插入到當前位置(put)
退出保存:
:q : 退出
:q! : 不保存退出
ZZ : 保存後退出
:e! : 放棄修改重新編輯
掌握這些基本命令,Linux下的基本使用已經掌握,只要多加練習,多遇到問題,解決問題,能力就會不斷的提升。


精選37條強大的常用linux shell命令組合


任務命令組合
1刪除0字節文件find . -type f -size 0 -exec rm -rf {} \;
find . type f -size 0 -delete
2查看進程,按內存從大到小排列ps -e -o "%C : %p : %z : %a"|sort -k5 -nr
3按cpu利用率從大到小排列ps -e -o "%C : %p : %z : %a"|sort -nr
4打印說cache裏的URLgrep -r -a jpg /data/cache/* | strings | grep "http:" | awk -F'http:' '{print "http:"$2;}'
5查看http的併發請求數及其TCP連接狀態netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
6sed在這個文裏Root的一行,匹配Root一行,將no替換成yes。sed -i '/Root/s/no/yes/' /etc/ssh/sshd_config 
7如何殺掉mysql進程ps aux |grep mysql |grep -v grep  |awk '{print $2}' |xargs kill -9
killall -TERM mysqld
kill -9 `cat /usr/local/apache2/logs/httpd.pid` 
8顯示運行3級別開啓的服務(從中瞭解到cut的用途,截取數據)ls /etc/rc3.d/S* |cut -c 15- 
9如何在編寫SHELL顯示多個信息,用EOFcat << EOF
+--------------------------------------------------------------+
|   === Welcome to Tunoff services ===                         |
+--------------------------------------------------------------+
EOF
10for的用法(如給mysql建軟鏈接)cd /usr/local/mysql/bin
for i in *
do ln /usr/local/mysql/bin/$i /usr/bin/$i
done
11取IP地址ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-
ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' |cut -d: -f2 | awk '{ print $1}'
12內存的大小free -m |grep "Mem" | awk '{print $2}'
13查看80端口的連接,並排序netstat -an -t | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort
14查看Apache的併發請求數及其TCP連接狀態netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
15統計一下服務器下面所有的jpg的文件的大小find / -name *.jpg -exec wc -c {} \;|awk '{print $1}'|awk '{a+=$1}END{print a}'
16CPU的數量cat /proc/cpuinfo |grep -c processor
17CPU負載 cat /proc/loadavg
18CPU負載 mpstat 1 1
19內存空間 free
20磁盤空間 df -h
21如發現某個分區空間接近用盡,可以進入該分區的掛載點,用以下命令找出佔用空間最多的文件或目錄du -cks * | sort -rn | head -n 10
22磁盤I/O負載 iostat -x 1 2
23網絡負載 sar -n DEV
24網絡錯誤 netstat -i
cat /proc/net/dev
25網絡連接數目netstat -an | grep -E “^(tcp)” | cut -c 68- | sort | uniq -c | sort -n
26進程總數ps aux | wc -l
27查看進程樹ps aufx
28可運行進程數目vmwtat 1 5
29檢查DNS Server工作是否正常,這裏以61.139.2.69爲例dig www.baidu.com @61.139.2.69
30檢查當前登錄的用戶個數who | wc -l
31日誌查看、搜索cat /var/log/rflogview/*errors
grep -i error /var/log/messages
grep -i fail /var/log/messages
tail -f -n 2000 /var/log/messages
32內核日誌dmesg
33時間date
34已經打開的句柄數lsof | wc -l
35網絡抓包,直接輸出摘要信息到文件。tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts
36然後檢查IP的重複數 並從小到大排序 注意 "-t\  +0" 中間是兩個空格,less命令的用法。less pkts | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} | sort -n -t\  +0
37kudzu查看網卡型號kudzu --probe --class=network




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章