1. 程式人生 > >Linux Shell常用技巧(八)

Linux Shell常用技巧(八)

 

1.  Linux的實時監測命令(watch):
    watch 是一個非常實用的命令,可以幫你實時監測一個命令的執行結果,省得一遍又一遍的手動執行。該命令最為常用的兩個選項是-d和-n,其中-n表示間隔多少秒執行一次"command",-d表示高亮發生變化的位置。下面列舉幾個在watch中常用的實時監視命令:
    /> watch -d -n 1 'who'   #每隔一秒執行一次who命令,以監視伺服器當前使用者登入的狀況
    Every 1.0s: who       Sat Nov 12 12:37:18 2011
    
    stephen  tty1           2011-11-11 17:38 (:0)
    stephen  pts/0         2011-11-11 17:39 (:0.0)
    root       pts/1         2011-11-12 10:01 (192.168.149.1)
    root       pts/2         2011-11-12 11:41 (192.168.149.1)
    root       pts/3         2011-11-12 12:11 (192.168.149.1)
    stephen  pts/4         2011-11-12 12:22 (:0.0)
    此時通過其他Linux客戶端工具以root的身份登入當前Linux伺服器,再觀察watch命令的執行變化。
    Every 1.0s: who       Sat Nov 12 12:41:09 2011
    
    stephen  tty1          2011-11-11 17:38 (:0)
    stephen  pts/0        2011-11-11 17:39 (:0.0)
    root       pts/1        2011-11-12 10:01 (192.168.149.1)
    root       pts/2        2011-11-12 11:41 (192.168.149.1)
    root       pts/3        2011-11-12 12:40 (192.168.149.1)
    stephen  pts/4        2011-11-12 12:22 (:0.0)
    root       pts/5        2011-11-12 12:41 (192.168.149.1)
    最後一行中被高亮的使用者為新登入的root使用者。此時按CTRL + C可以退出正在執行的watch監控程序。
    
    #watch可以同時執行多個命令,命令間用分號分隔。
    #以下命令監控磁碟的使用狀況,以及當前目錄下檔案的變化狀況,包括檔案的新增、刪除和檔案修改日期的更新等。
    /> watch -d -n 1 'df -h; ls -l'


    Every 1.0s: df -h; ls -l     Sat Nov 12 12:55:00 2011
    
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda1             5.8G  3.3G  2.2G  61% /
    tmpfs                 504M  420K  504M   1% /dev/shm
    total 20
    -rw-r--r--. 1 root root 10530 Nov 11 23:08 test.tar.bz2
    -rw-r--r--. 1 root root   183 Nov 11 08:02 users
    -rw-r--r--. 1 root root   279 Nov 11 08:45 users2
    此時通過另一個Linux控制檯視窗,在watch監視的目錄下,如/home/stephen/test,執行下面的命令
    /> touch aa
         #在執行該命令之後,另一個執行watch命令的控制檯將有如下變化
    Every 1.0s: df -h; ls -l                                Sat Nov 12 12:57:08 2011
    
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda1             5.8G  3.3G  2.2G  61% /
    tmpfs                 504M  420K  504M   1% /dev/shm
    total 20
    -rw-r--r--. 1 root root        0 Nov 12 12:56 aa
    -rw-r--r--. 1 root root        0 Nov 12 10:02 datafile3
    -rw-r--r--. 1 root root 10530 Nov 11 23:08 test.tar.bz2
    -rw-r--r--. 1 root root     183 Nov 11 08:02 users
    -rw-r--r--. 1 root root     279 Nov 11 08:45 users2
    其中黃色高亮的部分,為touch aa命令執行之後watch輸出的高亮變化部分。

    
    2.  檢視當前系統記憶體使用狀況(free):
    free命令有以下幾個常用選項:

選項 說明
-b 以位元組為單位顯示資料。
-k 以千位元組(KB)為單位顯示資料(預設值)。
-m 以兆(MB)為單位顯示資料。
-s delay 該選項將使free持續不斷的重新整理,每次重新整理之間的間隔為delay指定的秒數,如果含有小數點,將精確到毫秒,如0.5為500毫秒,1為一秒。

    free命令輸出的表格中包含以下幾列:

列名 說明
total 總計實體記憶體的大小。
used 已使用的記憶體數量。
free 可用的記憶體數量。
Shared 多個程序共享的記憶體總額。
Buffers/cached 磁碟快取的大小。


    見以下具體示例和輸出說明:
    /> free -k
                        total         used          free     shared    buffers     cached
    Mem:       1031320     671776     359544          0      88796     352564
    -/+ buffers/cache:      230416     800904
    Swap:        204792              0     204792
    對於free命令的輸出,我們只需關注紅色高亮的輸出行和綠色高亮的輸出行,見如下具體解釋:
    紅色輸出行:該行使從作業系統的角度來看待輸出資料的,used(671776)表示核心(Kernel)+Applications+buffers+cached。free(359544)表示系統還有多少記憶體可供使用。
    綠色輸出行:該行則是從應用程式的角度來看輸出資料的。其free = 作業系統used + buffers + cached,既:
    800904 = 359544 + 88796 + 352564
    /> free -m
                      total        used        free      shared    buffers     cached
    Mem:          1007         656        351            0         86            344
    -/+ buffers/cache:        225        782
    Swap:          199             0        199
    /> free -k -s 1.5  #以千位元組(KB)為單位顯示資料,同時每隔1.5重新整理輸出一次,直到按CTRL+C退出
                      total        used       free     shared    buffers     cached
    Mem:          1007         655        351          0           86        344
    -/+ buffers/cache:        224        782
    Swap:          199             0        199

                      total        used       free     shared    buffers     cached
    Mem:          1007         655        351          0           86        344
    -/+ buffers/cache:        224        782
    Swap:          199             0        199

    3.  CPU的實時監控工具(mpstat):
    該命令主要用於報告當前系統中所有CPU的實時執行狀況。
    #該命令將每隔2秒輸出一次CPU的當前執行狀況資訊,一共輸出5次,如果沒有第二個數字引數,mpstat將每隔兩秒執行一次,直到按CTRL+C退出。
    /> mpstat 2 5  
    Linux 2.6.32-71.el6.i686 (Stephen-PC)   11/12/2011      _i686_  (1 CPU)

    04:03:00 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
    04:03:02 PM  all    0.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00   99.50
    04:03:04 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:03:06 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:03:08 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:03:10 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    Average:       all    0.00    0.00    0.10    0.00    0.00    0.00    0.00    0.00   99.90

    第一行的末尾給出了當前系統中CPU的數量。後面的表格中則輸出了系統當前CPU的使用狀況,以下為每列的含義:

列名 說明
%user 在internal時間段裡,使用者態的CPU時間(%),不包含nice值為負程序  (usr/total)*100
%nice 在internal時間段裡,nice值為負程序的CPU時間(%)   (nice/total)*100
%sys 在internal時間段裡,核心時間(%)       (system/total)*100
%iowait 在internal時間段裡,硬碟IO等待時間(%) (iowait/total)*100
%irq 在internal時間段裡,硬中斷時間(%)     (irq/total)*100
%soft 在internal時間段裡,軟中斷時間(%)     (softirq/total)*100
%idle 在internal時間段裡,CPU除去等待磁碟IO操作外的因為任何原因而空閒的時間閒置時間(%) (idle/total)*100

    計算公式:
    total_cur=user+system+nice+idle+iowait+irq+softirq
    total_pre=pre_user+ pre_system+ pre_nice+ pre_idle+ pre_iowait+ pre_irq+ pre_softirq
    user=user_cur – user_pre
    total=total_cur-total_pre
    其中_cur 表示當前值,_pre表示interval時間前的值。上表中的所有值可取到兩位小數點。    

    /> mpstat -P ALL 2 3  #-P ALL表示列印所有CPU的資料,這裡也可以列印指定編號的CPU資料,如-P 0(CPU的編號是0開始的)
    Linux 2.6.32-71.el6.i686 (Stephen-PC)   11/12/2011      _i686_  (1 CPU)

    04:12:54 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
    04:12:56 PM    all      0.00      0.00     0.50    0.00      0.00    0.00    0.00      0.00     99.50
    04:12:56 PM      0     0.00      0.00     0.50    0.00      0.00    0.00    0.00      0.00     99.50

    04:12:56 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
    04:12:58 PM    all     0.00      0.00     0.00    0.00      0.00    0.00    0.00      0.00    100.00
    04:12:58 PM     0     0.00      0.00     0.00    0.00      0.00    0.00    0.00      0.00    100.00

    04:12:58 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
    04:13:00 PM    all      0.00     0.00    0.00    0.00      0.00    0.00     0.00      0.00    100.00
    04:13:00 PM     0      0.00     0.00    0.00    0.00      0.00    0.00     0.00      0.00    100.00

    Average:       CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
    Average:         all      0.00     0.00    0.17    0.00      0.00    0.00     0.00      0.00     99.83
    Average:          0      0.00     0.00    0.17    0.00      0.00    0.00     0.00      0.00     99.83

    4.  虛擬記憶體的實時監控工具(vmstat):
    vmstat命令用來獲得UNIX系統有關程序、虛存、頁面交換空間及CPU活動的資訊。這些資訊反映了系統的負載情況。vmstat首次執行時顯示自系統啟動開始的各項統計資訊,之後執行vmstat將顯示自上次執行該命令以後的統計資訊。使用者可以通過指定統計的次數和時間來獲得所需的統計資訊。
    /> vmstat 1 3    #這是vmstat最為常用的方式,其含義為每隔1秒輸出一條,一共輸出3條後程序退出。
    procs  -----------memory----------   ---swap-- -----io---- --system-- -----cpu-----
     r  b   swpd      free      buff   cache   si   so     bi    bo     in   cs  us  sy id  wa st
     0  0        0 531760  67284 231212  108  0     0  260   111  148  1   5 86   8  0
     0  0        0 531752  67284 231212    0    0     0     0     33   57   0   1 99   0  0
     0  0        0 531752  67284 231212    0    0     0     0     40   73   0   0 100 0  0

    /> vmstat 1       #其含義為每隔1秒輸出一條,直到按CTRL+C後退出。

    下面將給出輸出表格中每一列的含義說明:
    有關程序的資訊有:(procs)
    r:  在就緒狀態等待的程序數。
    b: 在等待狀態等待的程序數。    
    有關記憶體的資訊有:(memory)
    swpd:  正在使用的swap大小,單位為KB。
    free:    空閒的記憶體空間。
    buff:    已使用的buff大小,對塊裝置的讀寫進行緩衝。
    cache: 已使用的cache大小,檔案系統的cache。
    有關頁面交換空間的資訊有:(swap)
    si:  交換記憶體使用,由磁碟調入記憶體。
    so: 交換記憶體使用,由記憶體調入磁碟。  
    有關IO塊裝置的資訊有:(io)
    bi:  從塊裝置讀入的資料總量(讀磁碟) (KB/s)
    bo: 寫入到塊裝置的資料總理(寫磁碟) (KB/s)   
    有關故障的資訊有:(system)
    in: 在指定時間內的每秒中斷次數。
    sy: 在指定時間內每秒系統呼叫次數。
    cs: 在指定時間內每秒上下文切換的次數。   
    有關CPU的資訊有:(cpu)
    us:  在指定時間間隔內CPU在使用者態的利用率。
    sy:  在指定時間間隔內CPU在核心態的利用率。
    id:  在指定時間間隔內CPU空閒時間比。
    wa: 在指定時間間隔內CPU因為等待I/O而空閒的時間比。   
    vmstat 可以用來確定一個系統的工作是受限於CPU還是受限於記憶體:如果CPU的sy和us值相加的百分比接近100%,或者執行佇列(r)中等待的程序數總是不等於0,且經常大於4,同時id也經常小於40,則該系統受限於CPU;如果bi、bo的值總是不等於0,則該系統受限於記憶體。

    5.  裝置IO負載的實時監控工具(iostat):
    iostat主要用於監控系統裝置的IO負載情況,iostat首次執行時顯示自系統啟動開始的各項統計資訊,之後執行iostat將顯示自上次執行該命令以後的統計資訊。使用者可以通過指定統計的次數和時間來獲得所需的統計資訊。
    其中該命令中最為常用的使用方式如下:
    /> iostat -d 1 3    #僅顯示裝置的IO負載,其中每隔1秒重新整理並輸出結果一次,輸出3次後iostat退出。
    Linux 2.6.32-71.el6.i686 (Stephen-PC)   11/16/2011      _i686_  (1 CPU)

    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda                 5.35       258.39        26.19     538210      54560

    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda                 0.00         0.00         0.00                  0          0

    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda                 0.00         0.00         0.00                  0          0

    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda                 0.00         0.00         0.00                  0          0
    /> iostat -d 1  #和上面的命令一樣,也是每隔1秒重新整理並輸出一次,但是該命令將一直輸出,直到按CTRL+C退出。
    下面將給出輸出表格中每列的含義:

列名 說明
Blk_read/s 每秒塊(扇區)讀取的數量。
Blk_wrtn/s 每秒塊(扇區)寫入的數量。
Blk_read 總共塊(扇區)讀取的數量。
Blk_wrtn 總共塊(扇區)寫入的數量。

    iostat還有一個比較常用的選項-x,該選項將用於顯示和io相關的擴充套件資料。
    /> iostat -dx 1 3
    Device:  rrqm/s wrqm/s  r/s   w/s  rsec/s wsec/s avgrq-sz avgqu-sz   await  svctm  %util
    sda            5.27   1.31 2.82 1.14 189.49  19.50    52.75     0.53     133.04  10.74   4.26

    Device:  rrqm/s wrqm/s  r/s   w/s  rsec/s wsec/s avgrq-sz avgqu-sz   await  svctm  %util
    sda            0.00   0.00 0.00 0.00   0.00   0.00        0.00     0.00         0.00   0.00   0.00

    Device:  rrqm/s wrqm/s  r/s   w/s  rsec/s wsec/s avgrq-sz avgqu-sz   await  svctm  %util
    sda            0.00   0.00 0.00 0.00   0.00   0.00        0.00     0.00         0.00   0.00   0.00
    還可以在命令列引數中指定要監控的裝置名,如:
    /> iostat -dx sda 1 3   #指定監控的裝置名稱為sda,該命令的輸出結果和上面命令完全相同。

    下面給出擴充套件選項輸出的表格中每列的含義:

列名 說明
rrqm/s 佇列中每秒鐘合併的讀請求數量
wrqm/s 佇列中每秒鐘合併的寫請求數量
r/s 每秒鐘完成的讀請求數量
w/s 每秒鐘完成的寫請求數量
rsec/s 每秒鐘讀取的扇區數量
wsec/s 每秒鐘寫入的扇區數量
avgrq-sz 平均請求扇區的大小
avgqu-sz 平均請求佇列的長度
await 平均每次請求的等待時間
util 裝置的利用率

    下面是關鍵列的解釋:
    util是裝置的利用率。如果它接近100%,通常說明裝置能力趨於飽和。
    await是平均每次請求的等待時間。這個時間包括了佇列時間和服務時間,也就是說,一般情況下,await大於svctm,它們的差值越小,則說明佇列時間越短,反之差值越大,佇列時間越長,說明系統出了問題。
    avgqu-sz是平均請求佇列的長度。毫無疑問,佇列長度越短越好。                 

     6.  當前執行程序的實時監控工具(pidstat):
     pidstat主要用於監控全部或指定程序佔用系統資源的情況,如CPU,記憶體、裝置IO、任務切換、執行緒等。pidstat首次執行時顯示自系統啟動開始的各項統計資訊,之後執行pidstat將顯示自上次執行該命令以後的統計資訊。使用者可以通過指定統計的次數和時間來獲得所需的統計資訊。
    在正常的使用,通常都是通過在命令列選項中指定待監控的pid,之後在通過其他具體的引數來監控與該pid相關係統資源資訊。

選項 說明
-l 顯示該程序和CPU相關的資訊(command列中可以顯示命令的完整路徑名和命令的引數)。
-d 顯示該程序和裝置IO相關的資訊。
-r 顯示該程序和記憶體相關的資訊。
-w 顯示該程序和任務時間片切換相關的資訊。
-t 顯示在該程序內正在執行的執行緒相關的資訊。
-p 後面緊跟著帶監控的程序id或ALL(表示所有程序),如不指定該選項,將監控當前系統正在執行的所有程序。

    #監控pid為1(init)的程序的CPU資源使用情況,其中每隔3秒重新整理並輸出一次,3次後程式退出。
    /> pidstat -p 1 2 3 -l
    07:18:58 AM       PID    %usr %system  %guest    %CPU   CPU  Command
    07:18:59 AM         1    0.00    0.00    0.00    0.00     0  /sbin/init
    07:19:00 AM         1    0.00    0.00    0.00    0.00     0  /sbin/init
    07:19:01 AM         1    0.00    0.00    0.00    0.00     0  /sbin/init
    Average:               1    0.00    0.00    0.00    0.00     -  /sbin/init
    %usr:      該程序在使用者態的CPU使用率。
    %system:該程序在核心態(系統級)的CPU使用率。
    %CPU:     該程序的總CPU使用率,如果在SMP環境下,該值將除以CPU的數量,以表示每CPU的資料。
    CPU:         該程序所依附的CPU編號(0表示第一個CPU)。

    #監控pid為1(init)的程序的裝置IO資源負載情況,其中每隔2秒重新整理並輸出一次,3次後程式退出。
    /> pidstat -p 1 2 3 -d    
    07:24:49 AM       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
    07:24:51 AM         1      0.00      0.00      0.00  init
    07:24:53 AM         1      0.00      0.00      0.00  init
    07:24:55 AM         1      0.00      0.00      0.00  init
    Average:               1      0.00      0.00      0.00  init
    kB_rd/s:   該程序每秒的位元組讀取數量(KB)。
    kB_wr/s:   該程序每秒的位元組寫出數量(KB)。
    kB_ccwr/s: 該程序每秒取消磁碟寫入的數量(KB)。

    #監控pid為1(init)的程序的記憶體使用情況,其中每隔2秒重新整理並輸出一次,3次後程式退出。
    /> pidstat -p 1 2 3 -r
    07:29:56 AM       PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
    07:29:58 AM         1      0.00      0.00    2828   1368   0.13  init
    07:30:00 AM         1      0.00      0.00    2828   1368   0.13  init
    07:30:02 AM         1      0.00      0.00    2828   1368   0.13  init
    Average:               1      0.00      0.00    2828   1368   0.13  init
    %MEM:  該程序的記憶體使用百分比。

    #監控pid為1(init)的程序任務切換情況,其中每隔2秒重新整理並輸出一次,3次後程式退出。
    /> pidstat -p 1 2 3 -w
    07:32:15 AM       PID   cswch/s nvcswch/s  Command
    07:32:17 AM         1      0.00      0.00  init
    07:32:19 AM         1      0.00      0.00  init
    07:32:21 AM         1      0.00      0.00  init
    Average:            1      0.00      0.00  init
    cswch/s:    每秒任務主動(自願的)切換上下文的次數。主動切換是指當某一任務處於阻塞等待時,將主動讓出自己的CPU資源。
    nvcswch/s: 每秒任務被動(不自願的)切換上下文的次數。被動切換是指CPU分配給某一任務的時間片已經用完,因此將強迫該程序讓出CPU的執行權。

    #監控pid為1(init)的程序及其內部執行緒的記憶體(r選項)使用情況,其中每隔2秒重新整理並輸出一次,3次後程式退出。需要說明的是,如果-t選項後面不加任何其他選項,預設監控的為CPU資源。結果中黃色高亮的部分表示程序和其內部執行緒是樹狀結構的顯示方式。
    /> pidstat -p 1 2 3 -tr
    Linux 2.6.32-71.el6.i686 (Stephen-PC)   11/16/2011      _i686_  (1 CPU)

    07:37:04 AM      TGID       TID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
    07:37:06 AM         1         -      0.00      0.00        2828   1368      0.13  init
    07:37:06 AM         -         1      0.00      0.00        2828   1368      0.13  |__init

    07:37:06 AM      TGID       TID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
    07:37:08 AM         1         -      0.00      0.00        2828   1368      0.13  init
    07:37:08 AM         -         1      0.00      0.00        2828   1368      0.13  |__init

    07:37:08 AM      TGID       TID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
    07:37:10 AM         1         -      0.00      0.00        2828   1368      0.13  init
    07:37:10 AM         -         1      0.00      0.00        2828   1368      0.13  |__init

    Average:         TGID       TID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
    Average:            1         -      0.00      0.00        2828   1368      0.13  init
    Average:            -         1      0.00      0.00        2828   1368      0.13  |__init
    TGID: 執行緒組ID。
    TID: 執行緒ID。  

    以上監控不同資源的選項可以同時存在,這樣就將在一次輸出中輸出多種資源的使用情況,如:pidstat -p 1 -dr。

    7.  報告磁碟空間使用狀況(df):
    該命令最為常用的選項就是-h,該選項將智慧的輸出資料單位,以便使輸出的結果更具可讀性。
    /> df -h
    Filesystem             Size  Used   Avail Use% Mounted on
    /dev/sda1             5.8G  3.3G  2.2G  61%   /
    tmpfs                  504M  260K  504M   1%  /dev/shm

    8.  評估磁碟的使用狀況(du):

選項 說明
-a 包括了所有的檔案,而不只是目錄。
-b 以位元組為計算單位。
-k 以千位元組(KB)為計算單位。
-m 以兆位元組(MB)為計算單位。
-h 是輸出的資訊更易於閱讀。
-s 只顯示工作目錄所佔總空間。
--exclude=PATTERN 排除掉符合樣式的檔案,Pattern就是普通的Shell樣式,?表示任何一個字元,*表示任意多個字元。
--max-depth=N 從當前目錄算起,目錄深度大於N的子目錄將不被計算,該選項不能和s選項同時存在。 
 

    #僅顯示子一級目錄的資訊。
    /> du --max-depth=1 -h
    246M    ./stephen
    246M    .    
    /> du -sh ./*   #獲取當前目錄下所有子目錄所佔用的磁碟空間大小。
    352K    ./MemcachedTest
    132K    ./Test
    33M     ./thirdparty    
    #在當前目錄下,排除目錄名模式為Te*的子目錄(./Test),輸出其他子目錄佔用的磁碟空間大小。
    /> du --exclude=Te* -sh ./*  
    352K    ./MemcachedTest
    33M     ./thirdparty

分享轉發點贊私信,點選這裡獲取更多linux筆記乾貨

相關推薦

Linux Shell常用技巧()

  1.  Linux的實時監測命令(watch):     watch 是一

拿小本本記下的Linux Shell常用技巧(一)

        一.   特殊檔案: 

咆哮中寫出Linux Shell常用技巧(二)

  grep家族: 1. grep退出狀態: 0: 表示成功; 1: 表示在所提供的檔案無法找到匹配的pat

Linux Shell常用技巧(三)

          sed一次處理一行檔案並把輸出送往螢幕。sed

Linux Shell常用技巧(七)

下面給出find命令的主要應用示例:     /> ls -l  &nbs

周天奮戰一天Linux Shell常用技巧(十)

          需要說明的是,該篇Blog中絕大多數的

Linux Shell常用技巧(十二)

  1.  讀取使用者變數: read命令是用於從終端或者檔案中讀取輸入的內建命令,read命令讀

(七)Linux學習筆記-Linux常用命令-Shell常用技巧

(七)Linux學習筆記-Linux常用命令-Shell常用技巧 Shell常用技巧 < > >>輸入輸出重定向 |(管道) ; && ||(命令連線符) ''(命令替換符) ali

Linux Shell常用shell命令

tina -h 鏡像 groupadd 包括 ket mail 常用shell命令 sysconf Linux Shell常用shell命令 一、文件、目錄操作命令 1、ls命令 功能:顯示文件和目錄的信息 ls 以默認方式顯示當前目錄文件列表 ls -a 顯示所有文件包括

兩個linux shell技巧,助你提高敲命令效率!

技巧一.sudo! 1.在linux命令列敲命令時,你是不是也碰到過這種情況:敲了一長串命令,瀟灑的一回車,結果發現Permission denied。   當你意識到需要在行首加一個sudo,用root使用者執行該命令,這時你會怎麼做?通常的做法可能是這樣的: 1.按↑重新顯示之前的命

Linux+Shell常用命令總結

因為自己不經常使用linux的命令列工具,但是mac的終端還是經常使用的,有些命令總是要想一會或者百度一下才知道怎麼用,抽時間整理了一下常用的命令,作為筆記. 常用命令 檢視檔案操作:   ls :列出當前目錄下所有檔案和目錄   cat file:檢視檔案內容  -n:顯示行號    less file:

Intellij IDEA神器常用技巧-2018版本新增快捷鍵

工欲善其事必先利其器,如果有一款IDE可以讓你更高效地專注於開發以及原始碼閱讀,為什麼不試一試? 3月27日,jetbrains正式釋出期待已久的IntelliJ IDEA 2018.1,再次讓人眼前一亮:什麼,還能這麼玩? 下面,我們來快速瞭解一下 I

Linux Shell常用指令碼整理

輪詢檢測Apache狀態並啟用釘釘報警◆ #!/bin/bash shell_user="root" shell_domain="apache" shell_list="/root/ip_list" shell_row=`cat $shell_list |wc -l` function trans_

Linux shell常用基本命令(二)

三、基本系統命令 1、檢視某個命令的幫助 man ls 顯示ls命令的幫助內容 2、顯示登陸使用者詳細資訊 w 3、顯示登陸使用者 who who am I  檢視自己的資訊 4、檢視最近登陸使用者 last 5、顯示當前日期時間 date  顯示當前日期時間 date

Linux Shell 常用shell命令(三)基本系統命令

三、基本系統命令 1、man命令 功能:檢視某個命令的幫助,如果你不知道某個命令的用法不懂,可以問他,他知道就回告訴你 例如: man ls 顯示ls命令的幫助內容 2、w命令 功能:顯示登入使用者的詳細資訊 例如: Sarge:~# w 22:06:5

Linux Shell高階技巧

一、將輸入資訊轉換為大寫字元後再進行條件判斷:       我們在讀取使用者的正常輸入後,很有可能會將這些輸入資訊用於條件判斷,那麼在進行比較時,我們將不得不考慮這些資訊的大小寫匹配問題。       /> cat > test1.sh     

Linux Shell 腳本的小技巧——不定期更新

小技巧 linux shell 本文旨在積累平時寫 shell 腳本是遇到的小問題的解決方法。在這裏不定期的更新,以便以後查閱、沿用。 一,在shell 腳本中定義默認值 1. 對默認變量直接賦值 read -p "input>>:" nub nub=

Linux Shell Vim 經常使用命令、使用技巧總結

fetch comm 顯示行號 view ava string 文件 fun 更新 前言 本文總結了自己實際開發中的經常使用命令,不定時更新,方便自己和其它人查閱。 如有其它提高效率的使用技巧。歡迎留言。 本文地址 http://blog.csdn

linux下的常用技巧

$1 常用技巧 log hot XML chan -m linux 行合並 xargs linux下的多行合並~ [root@]# yum list installed|grep php|awk -F ‘ ‘ ‘{print $1}‘ php-channel-nrk.n

Linux Shell 編程 教程 常用命令

pos post lin blog 常用 教程 OS body linu 概述: 一: 1. 2. 3. 二: 1. 2. 3. 三: 1. 2. 3. 四: 1. 2. 3. 五: 1. 2. 3. 六: 1. 2. 3.