linux高效shell命令總結 cat 9.c |awk 'NR==21{gsub(/t09/,"ruiy");printf $0}' 1,comm【2檔案間行比較】 1 [root@localhost ruiy]# 2 用法:comm [選項]... 檔案1 檔案2 3 逐行比較已排序的檔案檔案1 和檔案2。 4 5 如果不附帶選項,程式會產生三列輸出。第一列包含檔案1 特有的行,第二列包含 檔案2 特有的行,而第三列包含兩個檔案共有的行。 6 7 -1 不輸出檔案1 特有的行 8 -2 不輸出檔案2 特有的行 9 -3 不輸出兩個檔案共有的行10 11 --check-order 檢查輸入是否被正確排序,即使所有輸入行均成對12 --nocheck-order 不檢查輸入是否被正確排序13 --output-delimiter=STR 依照STR 分列14 --help 顯示此協助資訊並退出15 --version 顯示版本資訊並退出16 17 注意,比較操作遵從"LC_CPLLATE"所定義的規則。18 19 樣本:20 comm -12 檔案1 檔案2 只列印在檔案1和檔案2中都有的行21 comm -3 檔案1 檔案2 列印在檔案1中有,而檔案2中沒有的行。反之亦然。 2,sort【字串排序】 29 [root@localhost ruiy]# 30 用法:sort [選項]... [檔案]...31 或:sort [選項]... --files0-from=F32 串聯排序所有指定檔案並將結果寫到標準輸出。33 34 長選項必須使用的參數對於短選項時也是必需使用的。35 排序選項:36 37 -b, --ignore-leading-blanks 忽略前置的空白地區38 -d, --dictionary-order 只考慮空白地區和字母字元39 -f, --ignore-case 忽略字母大小寫40 -g, --general-numeric-sort 按照常規數值排序41 -i, --ignore-nonprinting 只排序可列印字元42 -M, --month-sort 比較 (未知) < "一月" < ... < "十二月"43 在LC_ALL=C 時為(unknown) < `JAN' < ... < `DEC'44 -h, --human-numeric-sort 使用易讀性數字(例如: 2K 1G)45 -n, --numeric-sort 根據字串數值比較46 -R, --random-sort 根據隨機hash 排序47 --random-source=檔案 從指定檔案中獲得隨機位元組48 -r, --reverse 逆序輸出排序結果49 --sort=WORD 按照WORD 指定的格式排序:50 一般數字-g,高可讀性-h,月份-M,數字-n,51 隨機-R,版本-V52 -V, --version-sort 在文本內進行自然版本排序53 54 其他選項:55 56 --batch-size=NMERGE 一次最多合并NMERGE 個輸入;如果輸入更多57 則使用臨時檔案58 -c, --check, --check=diagnose-first 檢查輸入是否已排序,若已有序則不進行操作59 -C, --check=quiet, --check=silent 類似-c,但不報告第一個無序行60 --compress-program=程式 使用指定程式壓縮臨時檔案;使用該程式61 的-d 參數解壓縮檔案62 --files0-from=檔案 從指定檔案讀取以NUL 終止的名稱,如果該檔案被63 指定為"-"則從標準輸入讀檔案名稱64 -k, --key=位置1[,位置2] 在位置1 開始一個key,在位置2 終止(預設為行尾)65 -m, --merge 合并已排序的檔案,不再進行排序66 -o, --output=檔案 將結果寫入到檔案而非標準輸出67 -s, --stable 禁用last-resort 比較以穩定比較演算法68 -S, --buffer-size=大小 指定主記憶體緩衝大小69 -t, --field-separator=分隔字元 使用指定的分隔字元代替非空格到空格的轉換70 -T, --temporary-directory=目錄 使用指定目錄而非$TMPDIR 或/tmp 作為71 臨時目錄,可用多個選項指定多個目錄72 -u, --unique 配合-c,嚴格校正排序;不配合-c,則只輸出一次排序結果73 -z, --zero-terminated 以0 位元組而非新行作為行尾標誌 3,cut【字串中字元截取】 1 [root@localhost ruiy]# 2 用法:cut [選項]... [檔案]... 3 從每個檔案中輸出指定部分到標準輸出。 4 5 長選項必須使用的參數對於短選項時也是必需使用的。 6 -b, --bytes=列表 只選中指定的這些位元組 7 -c, --characters=列表 只選中指定的這些字元 8 -d, --delimiter=分界符 使用指定分界符代替定位字元作為地區分界 9 -f, --fields=LIST select only these fields; also print any line10 that contains no delimiter character, unless11 the -s option is specified12 -n with -b: don't split multibyte characters13 --complement 補全選中的位元組、字元或域14 -s, --only-delimited 不列印沒有包含分界符的行15 --output-delimiter=字串 使用指定的字串作為輸出分界符,預設採用輸入16 的分界符17 --help 顯示此協助資訊並退出18 --version 顯示版本資訊並退出19 20 僅使用f -b, -c 或-f 中的一個。每一個列表都是專門為一個類別作出的,或者您可以用逗號隔21 開要同時顯示的不同類別。您的輸入順序將作為讀取順序,每個僅能輸入一次。22 每種參數格式表示範圍如下:23 N 從第1 個開始數的第N 個位元組、字元或域24 N- 從第N 個開始到所在行結束的所有字元、位元組或域25 N-M 從第N 個開始到第M 個之間(包括第M 個)的所有字元、位元組或域26 -M 從第1 個開始到第M 個之間(包括第M 個)的所有字元、位元組或域 附個vnc配置. 現在知道的centos下的vnc是:tigervnc,由於是服務端所以我們只安裝tigervnc-server即可:yum install tigervnc-server然後修改vnc設定檔:cd /vi /etc/sysconfig/vncservers只需要兩類內容就可以了,一個是定義使用者,一個是定義使用者登入情況:VNCSERVERS="1:root 2:river"VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp"VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp"接下來分別使用命令列模式先後登入root和river使用者,登入後設定vncserver密碼,登入後的操作如下:vncpasswdPassword輸入密碼Verify再次輸入密碼啟動vnc服務:/sbin/service vncserver start 設定防火牆:iptables -I INPUT -p tcp --dport 5901:5902 -j ACCEPT iptables -I INPUT -p udp --dport 5901:5902 -j ACCEPT配置圖形介面:cd ~/.vncvi xstartup修改文檔中最後位置的twm為gnome-session或startkde即可,不要在這個後面再添加什麼字元,否則後果自負。哈哈。 使用vnc viewer登入即可:xxx.xxx.xxx.xx:1看清冒號後面 windows.下測試可下載vnc view軟體如果不能登入,請重啟vncserver【/sbin/service vncserver restart】