Linux運維人員必會的120個命令

創新互聯建站主要從事網站設計、成都網站設計、網頁設計、企業做網站、公司建網站等業務。立足成都服務鶴峰,十余年網站建設經驗,價格優惠、服務專業,歡迎來電咨詢建站服務:13518219792
來自《跟老男孩學Linux運維:核心系統命令實戰》一書
前言
第1章 Linux命令行簡介 / 1
1.1Linux命令行概述 / 1
1.2在Linux命令行下查看命令幫助 / 4
1.3Linux shutdown reboot halt / 9
關機:
shutdown -h now
halt
init 0
第2章 文件和目錄操作命令 / 13
2.1pwd:顯示當前所在的位置 / 13
2.2cd:切換目錄 / 16
2.3tree:以樹形結構顯示目錄下的內容 / 18
2.4mkdir:創建目錄 / 22
2.5touch:創建空文件或改變文件的時間戳屬性 / 27
2.6ls:顯示目錄下的內容及相關屬性信息 / 30
2.7cp:復制文件或目錄 / 39
2.8mv:移動或重命名文件 / 42
2.9rm:刪除文件或目錄 / 45
2.10rmdir:刪除空目錄 / 48
2.11ln:硬鏈接與軟鏈接 / 49
2.12readlink:查看符號鏈接文件的內容 / 54
2.13find:查找目錄下的文件 / 55
2.14xargs:將標準輸入轉換成命令行參數 / 68
2.15rename:重命名文件 / 71
2.16basename:顯示文件名或目錄名 / 72
2.17dirname:顯示文件或目錄路徑 / 72
2.18chattr:改變文件的擴展屬性 / 73
2.19lsattr:查看文件擴展屬性 / 75
2.20file:顯示文件的類型 / 76
2.21md5sum:計算和校驗文件的MD5值 / 77
2.22chown:改變文件或目錄的用戶和用戶組 / 80
2.23chmod:改變文件或目錄權限 / 81
2.24chgrp:更改文件用戶組 / 85
2.25umask:顯示或設置權限掩碼 / 86
2.26老男孩從新手成為技術大牛的心法 / 90
第3章 文件過濾及內容編輯處理命令 / 91
3.1cat:合并文件或查看文件內容 / 91
3.2tac:反向顯示文件內容 / 103
3.3more:分頁顯示文件內容 / 104
3.4less:分頁顯示文件內容 / 107
3.5head:顯示文件內容頭部 / 109
3.6tail:顯示文件內容尾部 / 111
3.7tailf:跟蹤日志文件 / 114
3.8cut:從文本中提取一段文字并輸出 / 115
3.9split:分割文件 / 117
3.10paste:合并文件 / 118
3.11sort:文本排序 / 123
3.12join:按兩個文件的相同字段合并 / 127
3.13uniq:去除重復行 / 129
3.14wc:統計文件的行數、單詞數或字節數 / 131
3.15iconv:轉換文件的編碼格式 / 133
3.16dos2unix:將DOS格式文件轉換成UNIX格式 / 134
3.17diff:比較兩個文件的不同 / 135
3.18vimdiff:可視化比較工具 / 138
3.19rev:反向輸出文件內容 / 139
3.20tr:替換或刪除字符 / 140
3.21od:按不同進制顯示文件 / 143
3.22tee:多重定向 / 145
3.23vi/vim:純文本編輯器 / 147
3.24老男孩逆襲思想:做Linux運維的多個好處 / 152
第4章 文本處理三劍客 / 153
4.1grep:文本過濾工具 / 153
4.2sed:字符流編輯器 / 159
4.3awk基礎入門 / 165
第5章 Linux信息顯示與搜索文件命令 / 176
5.1uname:顯示系統信息 / 176
5.2hostname:顯示或設置系統的主機名 / 178
5.3dmesg:系統啟動異常診斷 / 179
5.4stat:顯示文件或文件系統狀態 / 181
5.5du:統計磁盤空間使用情況 / 183
5.6date:顯示與設置系統時間 / 186
5.7echo:顯示一行文本 / 190
5.8watch:監視命令執行情況 / 193
5.9which:顯示命令的全路徑 / 195
5.10whereis:顯示命令及其相關文件全路徑 / 196
5.11locate:快速定位文件路徑 / 197
5.12updatedb:更新mlocate數據庫 / 199
5.13老男孩逆襲思想:新手在工作中如何問問題不會被鄙視 / 200
第6章 文件備份與壓縮命令 / 201
6.1tar:打包備份 / 201
6.2gzip:壓縮或解壓文件 / 208
6.3zip:打包和壓縮文件 / 211
6.4unzip:解壓zip文件 / 212
6.5scp:遠程文件復制 / 214
6.6rsync:文件同步工具 / 216
6.7老男孩逆襲思想:新手如何高效地提問 / 220
第7章 Linux用戶管理及用戶信息查詢命令 / 222
7.1 useradd:創建用戶 / 222
7.2usermod:修改用戶信息 / 227
7.3userdel:刪除用戶 / 229
7.4groupadd:創建新的用戶組 / 230
7.5groupdel:刪除用戶組 / 231
7.6passwd:修改用戶密碼 / 232
7.7chage:修改用戶密碼有效期 / 237
7.8chpasswd:批量更新用戶密碼 / 238
7.9su:切換用戶 / 240
7.10visudo:編輯sudoers文件 / 242
7.11sudo:以另一個用戶身份執行命令 / 244
7.12id:顯示用戶與用戶組的信息 / 248
7.13w:顯示已登錄用戶信息 / 249
7.14who:顯示已登錄用戶信息 / 250
7.15users:顯示已登錄用戶 / 252
7.16whoami:顯示當前登錄的用戶名 / 253
7.17last:顯示用戶登錄列表 / 253
7.18lastb:顯示用戶登錄失敗的記錄 / 254
7.19lastlog:顯示所有用戶的最近登錄記錄 / 255
第8章 Linux磁盤與文件系統管理命令 / 257
8.1fdisk:磁盤分區工具 / 257
8.2partprobe:更新內核的硬盤分區表信息 / 265
8.3tune2fs:調整ext2/ext3/ext4文件系統參數 / 266
8.4parted:磁盤分區工具 / 268
8.5mkfs:創建Linux文件系統 / 272
8.6dumpe2fs:導出ext2/ext3/ext4文件系統信息 / 274
8.7resize2fs:調整ext2/ext3/ext4文件系統大小 / 275
8.8fsck:檢查并修復Linux文件系統 / 278
8.9dd:轉換或復制文件 / 281
8.10mount:掛載文件系統 / 284
8.11umount:卸載文件系統 / 288
8.12df:報告文件系統磁盤空間的使用情況 / 289
8.13mkswap:創建交換分區 / 293
8.14swapon:激活交換分區 / 294
8.15swapoff:關閉交換分區 / 295
8.16sync:刷新文件系統緩沖區 / 296
第9章 Linux進程管理命令 / 298
9.1ps:查看進程 / 298
9.2pstree:顯示進程狀態樹 / 305
9.3pgrep:查找匹配條件的進程 / 306
9.4kill:終止進程 / 307
9.5killall:通過進程名終止進程 / 310
9.6pkill:通過進程名終止進程 / 311
9.7top:實時顯示系統中各個進程的資源占用狀況 / 313
9.8nice:調整程序運行時的優先級 / 320
9.9renice:調整運行中的進程的優先級 / 323
9.10nohup:用戶退出系統進程繼續工作 / 324
9.11strace:跟蹤進程的系統調用 / 325
9.12ltrace:跟蹤進程調用庫函數 / 332
9.13runlevel:輸出當前運行級別 / 334
9.14init:初始化Linux進程 / 335
9.15service:管理系統服務 / 335
第10章 Linux網絡管理命令 / 338
10.1ifconfig:配置或顯示網絡接口信息 / 338
10.2ifup:激活網絡接口 / 343
ifup eth0
10.3ifdown:禁用網絡接口 / 343
ifdown eth0
service network restart(/etc/init.d/network restart) 激活整個網絡,所有網卡。
10.4route:顯示或管理路由表 / 344
10.5arp:管理系統的arp緩存 / 350
10.6ip:網絡配置工具 / 351
10.7netstat:查看網絡狀態 / 358
10.8ss:查看網絡狀態 / 362
10.9ping:測試主機之間網絡的連通性 / 363
10.10traceroute:追蹤數據傳輸路由狀況 / 366
10.11arping:發送arp請求 / 367
10.12telnet:遠程登錄主機 / 369
10.13nc:多功能網絡工具 / 370
10.14ssh:安全地遠程登錄主機 / 373
10.15wget:命令行下載工具 / 376
10.16mailq:顯示郵件傳輸隊列 / 379
10.17mail:發送和接收郵件 / 381
10.18nslookup:域名查詢工具 / 386
10.19dig:域名查詢工具 / 389
10.20host:域名查詢工具 / 393
10.21nmap:網絡探測工具和安全/端口掃描器 / 394
10.22tcpdump:監聽網絡流量 / 398
第11章 Linux系統管理命令 / 407
11.1lsof:查看進程打開的文件 / 407
11.2uptime:顯示系統的運行時間及負載 / 411
11.3free:查看系統內存信息 / 411
11.4iftop:動態顯示網絡接口流量信息 / 413
11.5vmstat:虛擬內存統計 / 415
11.6mpstat:CPU信息統計 / 419
11.7iostat:I/O信息統計 / 420
11.8iotop:動態顯示磁盤I/O統計信息 / 423
11.9sar:收集系統信息 / 425
11.10chkconfig:管理開機服務 / 430
11.11ntsysv:管理開機服務 / 433
11.12 setup:系統管理工具 / 434
11.13ethtool:查詢網卡參數 / 436
11.14mii-tool:管理網絡接口的狀態 / 437
11.19rpm:RPM包管理器 / 443
11.20yum:自動化RPM包管理工具 / 446
top命令
第12章 Linux系統常用內置命令 / 450
12.1Linux內置命令概述 / 450
12.2Linux內置命令簡介 / 450
12.3Linux常用內置命令實例 / 452
本篇主題:詳細學習介紹cat和cut命令
cat 是一個 文本文件****查看 和 連接 工具
語法結構:
$ cat [選項] [文件]
參數選項:
-A, --show-all 等價于 -vET
-b, --number-nonblank 對非空輸出行編號
-e 等價于 -vE
-E, --show-ends 在每行結束處顯示 $
-n, --number 對輸出的所有行編號
-s, --squeeze-blank 不輸出多行空行
-t 與 -vT 等價
-T, --show-tabs 將跳 字符顯示為 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 顯示此幫助信息并離開
Cat主要有以下2大功能:
1、一次顯示(查看)整個文件,cat后面直接接文件名。
$ cat filename
比如以下,查看profile文件, -n參數是顯示 行
[root@localhost ~]# cat /etc/profile 注:查看/etc/目錄下的profile文件內容;
[root@localhost ~]# cat -b /etc/fstab 注:查看/etc/目錄下的profile內容,并且對非空白行進行編號,行號從1開始;
[root@localhost ~]# cat -n /etc/profile 注:對/etc目錄中的profile的所有的行(包括空白行)進行編號輸出顯示;
[root@localhost ~]# cat -E /etc/profile 注:查看/etc/下的profile內容,并且在每行的結尾處附加 $ 符號;
cat 加參數-n 和nl工具差不多,文件內容輸出的同時,都會在每行前面加上行號;
[root@localhost ~]# cat -n /etc/profile
[root@localhost ~]# nl /etc/profile
cat 可以同時顯示多個文件的內容,比如我們可以在一個cat命令上同時顯示兩個文件的內容;
[root@localhost ~]# cat /etc/fstab /etc/profile
cat 對于內容極大的文件來說,可以通過管道 | 傳送到more 工具,然后一頁一頁的查看;
[root@localhost ~]# cat /etc/fstab /etc/profile | more
2、cat 的創建、連接文件功能實例;
cat 有創建文件的功能,創建文件后,要以EOF或STOP結束;
[root@localhost ~]# cat linuxcat.txt EOF 注:創建linuxcat.txt文件;
如下圖所示:
cat 還有向已存在的文件追加內容的功能;
[root@localhost ~]# cat linuxsir.txt EOF 注:我們向linuxcat.txt文件追加內容;
(注:這里發現被我寫錯了, EOF 寫成了 OEF ,輸出的時候要對應輸出,咱不去究其原因)
cat 連接多個文件的內容并且輸出到一個新文件中;
命令是:
[root@localhost ~]# cat name1 name2 name3 name4
注意: 其原理是把三個文件的內容連接起來,然后創建name4文件,并且把幾個文件的內容同時寫入name4中。 特別值得一提的是,如果您輸入到一個已經存在的name4文件,會把name4內容清空。(****見文末例子****)
實例: 假設我們有sir01.txt、sir02.tx和sir03.txt ,并且內容如下;[root@localhost ~]# cat sir01.txt
123456
i am testing
[root@localhost ~]# cat sir02.txt
56789
BeiNan Tested
[root@localhost ~]# cat sir03.txt
09876
linuxsir.org testing
我想通過cat 把sir01.txt、sir02.txt及sir03.txt 三個文件連接在一起(也就是說把這三個文件的內容都接在一起)并輸出到一個新的文件sir04.txt 中。
[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir04.txt
[root@localhost ~]# **more **sir04.txt
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
cat 把一個或多個已存在的文件內容,追加到一個已存在的文件中
[root@localhost ~]# cat sir00.txt
linuxsir.org forever
[root@localhost ~]# cat sir01.txt sir02.txt sir03.txt** **sir00.txt
[root@localhost ~]# cat sir00.txt
linuxsir.org forever
123456
i am testing
56789
BeiNan Tested
09876
linuxsir.org testing
警告:我們要知道********意思是創建,********是追加。千萬不要弄混了。造成失誤可不是鬧著玩的;
cut是一個選取命令,就是將一段數據經過分析,取出我們想要的。一般來說,選取信息通常是針對“行”來進行分析的,并不是整篇信息分析的。
語法結構:
cut [-bn] [file] 或
cut [-c] [file] 或
cut [-df] [file]
選項參數:
-b :以 字節 為單位進行分割。這些字節位置將忽略多字節字符邊界,除非也指定了 -n 標志。
-c :以 字符 為單位進行分割。
-d : 自定義分隔符 ,默認為制表符。
-f :與-d一起使用,指定顯示哪個區域。
-n :取消分割多字節字符。僅和 -b 標志一起使用。如果字符的最后一個字節落在由 -b 標志的 List 參數指示的br /范圍之內,該字符將被寫出;否則,該字符將被排除。
使用說明:
cut 命令從文件的每一行剪切字節、字符和字段并將這些字節、字符和字段寫至標準輸出。
如果不指定 File 參數,cut 命令將讀取標準輸入。必須指定 -b、-c 或 -f 標志之一。
上一篇中也說到cut的使用。
值得注意的是 '-' 表示的是一個區間, ‘,’ 表示的是單個字符
例子二: 以 ‘:’ 為分隔符,截取PATH環境變量第五個位置的字符
先來看看PATH變量存的內容是什么
[2013012974@teach shell]$ echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/2013012974/bin
截取的結果:
從上面的例子中可以看出,以':'為分隔符,第五個位置是/usr/local/sbin
好了現在清晰了,****Cat**** 和****Cut****你學到了沒有?學到了分享一下啊!
一、作用
cut命令是一個選取命令,其功能是將文件中的每一行”字節” ”字符” ”字段” 進行剪切,選取我們需要的,并將這些選取好的數據輸出至標準輸出
二、格式
cut -[n]b file
cut -c file
cut -d[分隔符] -f[域] file
三、參數解釋
-b(bytes) :以字節為單位進行分割。這些字節位置將忽略多字節字符邊界,除非也指定了 -n 標志。
-c(characters) :以字符為單位進行分割。
-d :自定義分隔符,默認為制表符。
-f(filed) :與-d一起使用,指定顯示哪個區域。
-n :取消分割多字節字符。僅和 -b 標志一起使用。如果字符的最后一個字節落在由 -b 標志的 List 參數指示的
范圍之內,該字符將被寫出;否則,該字符將被排除。
cut命令的用法如下:
cut - 在文件的每一行中提取片斷
在 每個文件 FILE 的 各行 中, 把 提取的 片斷 顯示在 標準輸出.
-b, --bytes=LIST
輸出 這些 字節
-c, --characters=LIST
輸出 這些 字符
-d, --delimiter=DELIM
使用 DELIM 取代 TAB 做 字段(field) 分隔符
-f, --fields=LIST
輸出 這些 字段
-n
(忽略)
-s, --only-delimited
不顯示 沒有 分隔符 的 行
--output-delimiter=STRING
使用 STRING 作為 輸出分隔符, 缺省 (的 輸出分隔符) 為 輸入分隔符
--help
顯示 幫助信息, 然后 結束
--version
顯示 版本信息, 然后 結束
使用 且 只使用 -b, -c 或 -f 中的 一個 選項. LIST 由 一個 范圍 (range) 或 逗號 隔開的 多個 范圍 組成. 范圍 是 下列 形式 之一:
N
第 N 個 字節, 字符 或 字段, 從 1 計數 起
N-
從 第 N 個 字節, 字符 或 字段 直至 行尾
N-M
從 第 N 到 第 M (并包括 第M) 個 字節, 字符 或 字段
-M
從 第 1 到 第 M (并包括 第M) 個 字節, 字符 或 字段
如果 沒有 指定 文件 FILE, 或 FILE 是 -, 就從 標準輸入 讀取 數據.
cut是一個選取命令,以行為單位,從每一行中截取出需要的部分。
(1)語法格式:
cut? [-bn] [file] 或 cut [-c] [file]? 或? cut [-df] [file]
(2)主要參數
-b:以字節為單位進行分割。這些字節位置將忽略多字節字符邊界,除非也指定了 -n 標志。
-c:以字符為單位進行分割。
-d:自定義分隔符,默認為制表符。
-f:與-d一起使用,指定顯示哪個區域。
-n:取消分割多字節字符。僅和-b標志一起使用。如果字符的最后一個字節落在由-b標志的List參數指示的范圍之內,該字符將被寫出;否則,該字符將被排除。
(3)用法示例
輸出/etc/passwd文件每一行的前4個字符
$ sudo cut -c 1-4 /etc/passwd
用法:cut -cnum1-num2 filename 說明:顯示每行從開頭算起 num1 到 num2 的文字。 范例: shell cat example test2 this is test1 shell cut -c1-6 example ## print 開頭算起前 6 個字元 從1開始計數 test2 this i 可以將一行分割成多列,通過-d ':',將分隔符改為:。再通過-f n指定選用的列。 如: $ echo 12:00:01 | cut -d ':' -f 2 00 Cut() 功能 將數據窗口控件當前行列上編輯框中的所選內容剪切掉并保存到系統剪貼板,對RichText 風格的數據窗口來說 把數據窗口控件中所選內容剪切到系統剪貼板 語法 dwcontrol.Cut () 參數 dwcontrol 數據窗口控件名 -b, --bytes bytd-list:只輸出在byte-list區間的bytes,TABs和backspaces都占1byte。 [1]-c, --characters character-list:只輸出在區間character-list內的字符TABs和backspaces都占一個字符。 -f, --fields field-list:只輸出在field-list內的域。 -d, --delimiter delim:指定在-f參數中的field-list的分割符(為delim中的第一個字符,缺省為TAB)。 -n:不分割多byte的字符。 -s, --only-delimited:在-f參數中不輸出沒有域分割符的行。 --help:在標準輸出上輸出幫助信息并退出。 --version:在標準輸出上輸出版本信息并退出。 返回值 Long 函數執行成功時返回剪切的字符個數 如果在編輯控件中未選擇任何內容 則不剪切任何字符, 函數返回0 如果函數執行出錯 則返回-1 ,如果dwcontrol 的值為NULL,則Cut()函數返回NULL 用法 除了程序中使用Cut()函數剪切數據窗口控件上編輯框中所選內容外 用戶使用鍵盤 按Ctrl+X 或鼠標同樣可以復制所選內容,代碼中可以使用數據窗口控件對象函數
網頁標題:在Linux命令cut的簡單介紹
網頁鏈接:http://www.yijiale78.com/article32/dschesc.html
成都網站建設公司_創新互聯,為您提供關鍵詞優化、外貿網站建設、定制網站、建站公司、靜態網站、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯