3.14-19 wc、iconv、dos2unix、diff、vimdiff、rev
生活随笔
收集整理的這篇文章主要介紹了
3.14-19 wc、iconv、dos2unix、diff、vimdiff、rev
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
3.14 wc:統計文件的行數、單詞數或字節數
wc命令用于統計文件的行數、單詞數或字節數。 -c 統計字節數 -w 統計單詞數 -l 統計行數?? ? -L 打印最長行的長度 -m?統計字符數 查看文件的字節數、字數、行數等 [root@cs7-sm ~]# wc /etc/inittab 17 80 511 /etc/inittab [root@cs7-sm ~]# wc /etc/inittab 17 80 511 /etc/inittab [root@cs7-sm ~]# wc -c /etc/inittab 511 /etc/inittab [root@cs7-sm ~]# wc -l /etc/inittab 17 /etc/inittab [root@cs7-sm ~]# wc -m /etc/inittab 511 /etc/inittab [root@cs7-sm ~]# wc -w /etc/inittab 80 /etc/inittab [root@cs7-sm ~]# wc -L /etc/inittab 86 /etc/inittab 選項-L的使用 [root@cs7-sm ~]# for word in I am oldboy teacher welcome to oldboy training class.;do [ `echo $word|wc -L` -le 6 ] && echo $word;done I am oldboy to oldboy class. 查看登錄系統的用戶數 [root@cs7-sm ~]# who root pts/0 2019-05-19 16:42 (10.0.0.1) [root@cs7-sm ~]# who|wc -l 13.15 iconv:轉換文件的編碼格式
iconv命令用于轉換文件的編碼格式。 iconv [options] [-f from-encoding]? [-t to-encoding]?[inputfile] iconv [選項]? ? [原編碼]?? ??? ??? ??? [新編碼]?? ??? ?[輸入文件] -f? ?encodingA 從編碼A轉換 -l? ?顯示系統支持的編碼 -t? ?encodingB 轉換成編碼B -o?? 將輸出輸入到指定文件 [root@cs7-sm ~]# iconv -f gb2312 -t utf-8 gb2312.txt Hello World3.16 dos2unix:將DOS格式文件轉換成UNIX格式
將DOS(Windows系統)格式文件轉換成UNIX格式(DOS/MAC to UNIX text file format converter)。DOS下的文本文件是以“\r\n”作為換行標志的,而UNIX下的文本文件是以“\n”作為換行標志的。所以在Linux中使用Windows的文本文件時,常常會出現錯誤。為了避免這種錯誤,Linux提供了兩種文本格式相互轉化的命令:dos2unix和unix2dos,dos2unix把Windows文件的“\r\n”轉化成Linux文件的“\n”,unix2dos把Linux文件的“\n”轉化成Windows文件的“\r\n”。這個命令也挺好記的,dos to unix→dos 2(two→to)unix→dos2unix 處理由Windows 系統創建的腳本文件。 [root@cs7-sm ~]# cat test_win.sh #!/bin/bashexportfs_usage() {cat <<ENDUSAGE:$0 {start|stop|monitor|status|validate-all} END } exportfs_usage[root@cs7-sm ~]# bash test_win.sh test_win.sh: line 2: $'\r': command not found test_win.sh: line 3: syntax error near unexpected token `$'\r'' 'est_win.sh: line 3: `exportfs_usage() [root@cs7-sm ~]# cat -A test_win.sh #!/bin/bash^M$ ^M$ exportfs_usage()^M$ {^M$cat <<END^M$USAGE:$0 {start|stop|monitor|status|validate-all}^M$ END^M$ }^M$ exportfs_usage[root@cs7-sm ~]# dos2unix test_win.sh dos2unix: converting file test_win.sh to Unix format ... [root@cs7-sm ~]# cat -A test_win.sh #!/bin/bash$ $ exportfs_usage()$ {$cat <<END$USAGE:$0 {start|stop|monitor|status|validate-all}$ END$ }$ exportfs_usage[ro [root@cs7-sm ~]# cat -A test_win.sh #!/bin/bash$ $ exportfs_usage()$ {$cat <<END$USAGE:$0 {start|stop|monitor|status|validate-all}$ END$ }$ exportfs_usage[root@cs7-sm ~]# ^C [root@cs7-sm ~]# sh test_win.shUSAGE:test_win.sh {start|stop|monitor|status|validate-all}3.17 diff:比較兩個文件的不同
diff命令可以逐行比較純文本文件的內容,并輸出文件的差異。 只能同時比較2個文件。 -y? 以并列的方式顯示文件的異同之處 -c? 使用上下文的輸出格式 -W? 在使用-y參數時,指定顯示寬度 -u? 使用統一格式輸出 [root@cs7-sm ~]# cat >test1 1 2 3 4 5 6 [root@cs7-sm ~]# cat >test2 4 5 6 7 8 [root@cs7-sm ~]# diff test1 test2 1,3d0 < 1 < 2 < 3 6a4,5 > 7 > 8 以下是命令結果說明,diff默認的顯示格式有如下三種提示。 a?? ?-add c?? ?-change d?? ?-delete 例如:在1,3d0和6a4,5中,字母d/a前面的數字是文本1的行號,字母后面的是文本2的行號。其中以“<”打頭的行屬于文件1,以“>”打頭的行屬于文件2。 并排格式輸出 [root@cs7-sm ~]# diff -y test1 test2 #<==使用一參數就可以并排輸出。 1 < 2 < 3 < 4 4 5 5 6 6> 7> 8[root@cs7-sm ~]# diff -y -W 30 test1 test2 1 < 2 < 3 < 4 4 5 5 6 6> 7> 8 上下文輸出格式 [root@cs7-sm ~]# diff -c test1 test2 *** test1 2019-05-19 21:06:47.567530785 +0800 --- test2 2019-05-19 21:07:01.624530484 +0800 *************** *** 1,6 **** - 1 - 2 - 3456 --- 1,5 ----456 + 7 + 8"-"表示test2比test1少的行數。 "+"表示test2比test1多的行數。 統一格式輸出 [root@cs7-sm ~]# diff -u test1 test2 --- test1 2019-05-19 21:06:47.567530785 +0800 +++ test2 2019-05-19 21:07:01.624530484 +0800 @@ -1,6 +1,5 @@ -1 -2 -3 4 5 6 +7 +8 比較兩個目錄 [root@cs7-sm ~]# diff /etc/rc3.d/ /etc/rc6.d/ Only in /etc/rc6.d/: K90network Only in /etc/rc3.d/: S10network3.18 vimdiff:可視化比較工具
vimdiff調用vim打開文件,可以同時打開2個、3個或4個文件,最多4個文件,并且會以不同的顏色來區分文件的差異。 最多對比4個文件。3.19 rev:反向輸出文件內容
rev命令可以按行反向輸出文件內容。 字符串反轉 [root@cs7-sm ~]# echo {1..10} 1 2 3 4 5 6 7 8 9 10 [root@cs7-sm ~]# echo {1..10}|rev 01 9 8 7 6 5 4 3 2 1 文本反轉 [root@cs7-sm ~]# rev gb2312.txt 界世好你 ! dlroW olleH總結
以上是生活随笔為你收集整理的3.14-19 wc、iconv、dos2unix、diff、vimdiff、rev的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3.21-22 od、tee
- 下一篇: 3.20 tr:替换或删除字符