linux培訓(xùn)運(yùn)維筆記_第1頁(yè)
linux培訓(xùn)運(yùn)維筆記_第2頁(yè)
linux培訓(xùn)運(yùn)維筆記_第3頁(yè)
linux培訓(xùn)運(yùn)維筆記_第4頁(yè)
linux培訓(xùn)運(yùn)維筆記_第5頁(yè)
已閱讀5頁(yè),還剩752頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Linux 運(yùn)維培訓(xùn)學(xué)習(xí)筆記一直在用 Linux,但從未系統(tǒng)學(xué)習(xí)過,從 1 月 1 日開始學(xué)習(xí)到 7 月 16 日結(jié)束,近七個(gè)月學(xué)習(xí),讓自已對(duì)Linux 有了新的認(rèn)識(shí),老男孩老師的課真的不錯(cuò),實(shí)戰(zhàn)性很強(qiáng)。由于只能中午和晚上 10 點(diǎn)以后才有時(shí)間,所以所有的實(shí)驗(yàn)是在不同電腦上完成的,文中 IP 可能有點(diǎn)問題,但應(yīng)該不會(huì)影響實(shí)驗(yàn)。同時(shí),為了保證筆記的完整,在做筆記的時(shí)候,從網(wǎng)上也下載了些圖片和內(nèi)容。第一部分 運(yùn)維的原則和學(xué)習(xí)方法第一章運(yùn)維的原則:一、簡(jiǎn)單、易用、高效二、修改前做備份1、以便回滾2、以便事后比對(duì)改過的內(nèi)三、最小化原則1、安裝系統(tǒng)最小化2、開啟服務(wù)最小化3、操作最小化rm -fr te

2、st.txt 多了 r,只是刪除文件,,應(yīng)為rm -f test.txt4、登陸最小化平時(shí)沒有需求不用 root 登錄,要用普通用戶登錄5、權(quán)限最小化6、配置參數(shù)要合理,不要最大化四、盡量走別人走過的路,出問題的幾率小(運(yùn)維要求穩(wěn)定)第二章學(xué)習(xí)方法一、在使用中記憶二、通過案例來總結(jié)技術(shù)點(diǎn)三、畫圖來記憶知識(shí)點(diǎn),讓知識(shí)變得更簡(jiǎn)單,容易記憶四、當(dāng)一個(gè)命令的輸出,含有需要的內(nèi)容的時(shí)候,要想到這個(gè)命令可能會(huì)有對(duì)應(yīng)的參數(shù)直接顯示我們需要的內(nèi)容五、學(xué)會(huì)做小結(jié),得出實(shí)踐后的結(jié)論六、通過例子或案例來記憶結(jié)論七、盡量用man 來查看幫助,不要看二手資料。man 命令不僅可以查看命令,還可查看進(jìn)程的幫助。八、用數(shù)據(jù)

3、說話,用實(shí)際測(cè)試得出結(jié)論九、部署正確時(shí),可以折騰一個(gè)點(diǎn),讓系統(tǒng)報(bào)錯(cuò),提升解決故障的能力十、先把路走通后,再多變通十一、把良好的操作習(xí)慣當(dāng)做一個(gè)大事。十二、初學(xué)者學(xué)習(xí) Linux 運(yùn)維的幾個(gè)問題及建議。見參考博文注 20十三、重目標(biāo)、重思路、重方法、重實(shí)踐、重習(xí)慣、重總結(jié)第二部分 Linux 基礎(chǔ)第三章常用命令1、mkdir : 創(chuàng)建目錄,make directorys,-p 遞歸創(chuàng)建目錄mkdir -p /a/b/c2、ls : -l(long)d(directory)顯示目錄或文件,全稱 list-l #列出文件的詳細(xì)信息,如創(chuàng)建者,創(chuàng)建時(shí)間,文件的讀寫權(quán)限列表等等-d #只查看目錄-F #

4、會(huì)在不同類型的文件后面加上*/=>|等符號(hào),以便區(qū)分不同類型文件-p #會(huì)在目錄后面加上/,以便區(qū)分目錄和文件-h #人類可讀模式,顯示 K、M、G-i #顯示 inode,也就是文件的index number-r #依相反次序排列,reverse-R #列出所有子目錄層, recursive-t #按修改時(shí)間進(jìn)行文件的排序,-modification time-s #在每個(gè)文件的后面打印出文件的大小,-size-a #列出文件下所有的文件,包括以“.“開頭的隱藏文件-A #列出除了"."和"."以外的文件。-color=auto #添加顏色-ti

5、me-style=STYLE #style 值可選 full-iso,long-iso(最優(yōu)), iso, locale ll -time-style=long-iso install.log (顯示效果最好)-rw-r-r-. 1 root root 62057 2017-01-14 14:32 install.log ll -time-style=full-iso install.log-rw-r-r-. 1 root root 62057 2017-01-14 14:32:36.206994569 +0800 install.log ll -time-style=iso install.

6、log-rw-r-r-. 1 root root 62057 01-14 14:32 install.log ll -time-style=locale install.log-rw-r-r-. 1 root root 62057 Jan 14 14:32 install.log3、cd : 切換目錄層次 change directory表示家目錄,-表示上一次的目錄cd cd /tep/fq cd /rootcd - # 回到/tep/fq4、pwd : 顯示當(dāng)前目錄pwd5、echo : 打印輸出內(nèi)容(printf 復(fù)雜的輸出) 參數(shù):-n : 不換行輸出-e : 激活轉(zhuǎn)義字符,可以使用以

7、下轉(zhuǎn)義字符aalert (BEL)bbackspacecproduce no further outputeescapefform feednnew line#換行rcarriage returnthorizontal tab#水平 tab 鍵vvertical tab#垂直 tab 鍵示例:echo "abce"echo -n 'abcd'echo 'efg' echo -e "hellotworld"helloworldecho -e "hellonworld" helloworldecho -e

8、"hellovworld" helloworld輸出命令的結(jié)果:a、用反引號(hào)(tab 鍵上)echo date +%Fb、用$()echo $(date +%F)6、vi/vim : 記事本編輯器:set nu 顯示行號(hào)set tabstop=4 一個(gè)tab 為 4 個(gè)空格長(zhǎng)度set ai 設(shè)置自動(dòng)縮進(jìn)syntax on高亮dd刪除當(dāng)前行yy復(fù)制當(dāng)前行p粘貼行號(hào) gg 定位到指定行號(hào)G切換到文件尾gg切換到文件首或 0:(注意是數(shù)字零)光標(biāo)移至當(dāng)前行首$:光標(biāo)移至當(dāng)前行尾7、cat : 查看文件內(nèi)容(concatenate)cat /etc/hostscat -n /etc

9、/hosts #顯示行號(hào)cat >>a.txt<<EOF#將 EOF 之間所所有數(shù)據(jù)追加到 a.txt 尾部.EOF8、cp : -apr 拷貝文件或目錄cp a.txt /tmp/cp -r a /tmp #將目錄 a 拷貝到 tmp cp -a a /tmp #-a = -dpr9、mv : 移動(dòng)文件或目錄,也可改名(rename 命令)mv a.txt /tmpmv a.txt b.txt #將 a.txt 改為 b.txt10、rm : 刪除文件-f 強(qiáng)制刪除文件-r 遞歸刪除文件或目錄-fr 刪除指定的目錄和文件rm -fr /tmp/*11、rmdir :

10、刪除空目錄12、head : 顯示文件前幾行,默認(rèn) 10 行-n 行數(shù)head -n 500 a.txt head -500 a.txt13、tail : 監(jiān)控文件的變化-n 行數(shù),顯示文件后幾行,默認(rèn) 10 行;-f 跟蹤文件結(jié)尾變化,如果文件被刪除后重建,不會(huì)顯示新的變化-F 跟蹤文件結(jié)尾變化,會(huì)嘗試重新連接文件,如果文件被刪除后重建,會(huì)顯示新的變化tail -n 500 a.txt tail -500 a.txt類似命令:tailf。tailf 相當(dāng)于 tail -f,類似于 tail -f,嚴(yán)格說來應(yīng)該與 tail follow=name 更相似些。與 tail -f 不同的是,如果文

11、件不增長(zhǎng),它不會(huì)去訪問磁盤文件,所以省電,并減少了磁盤訪問14、alias : 顯示設(shè)置的別名,ualias 取消別名可以在/etc/profile、/etc/bashrc 中配置全局別名。在用戶家目錄.bashrc 配置用戶別名alias grep='grep -color=auto'15、tac : 反轉(zhuǎn)內(nèi)容輸出(cat 反寫)cat a.txt | tac16、which : 查看命令所在的路徑which ntpdate/usr/sbin/ntpdate17、find : 查找命令,-type f按類型(f:文件 d:目錄)-name filename按文件名-perm按

12、權(quán)限查找-mtime按修改時(shí)間, +n 表示 n 天前,-n 表示最近的 n 天,n 表示第n 天-prune忽略某個(gè)目錄,如查沒有-depth 參數(shù),則-prune 則有效,并表示不深入到目錄里面。(難以理解,見下面練習(xí)題第二關(guān)中的說明)-mindepth限定搜索指定目錄的最小深度-maxdepth限定搜索指定目錄的最大深度!排除-o或,等于-or-and并且,條件之件默認(rèn)為-andfind / -type -f -name aaa#查找文件名為 aaa 的文件find . -maxdepth 1 -type d ! -name "."#只查找 1 層,類型是目錄,目錄名

13、不含有.的目錄find /bin -type f -perm 4755 -exec ls -l ; #查找有特殊權(quán)限的命令18、tree : 查看目錄結(jié)構(gòu)-d 顯示目錄-L 要顯示層級(jí)tree /tree -L 1 / : 只顯示一層結(jié)構(gòu)19、xargs:用于把其它命令的輸出交給后面的命令處理find /tmp -type f -name aa | xargs rm frfind ./ -type f -print0| xargs -0 md5sum >> md5_rc1.txt后一種是適用于文件名含有空格的文件。通常 xargs 用于隔斷文件是默認(rèn)為:空格、TAB、換行符等,-p

14、rint0 則是以 NULL 隔斷文件,xargs -0 就是以 NULL 來區(qū)分文件隔斷。20、whoami : 查看當(dāng)前命令行終端用戶21、w : 查看當(dāng)前登陸的用戶和做什么22、su:切換用戶參數(shù):-c<指令>或-command=<指令>:執(zhí)行完指定的指令后,即恢復(fù)原來的身份-f 或fast:適用于csh 與 tsch,使 shell 不用去讀取啟動(dòng)文件-或-l 或login:改變身份時(shí),也同時(shí)變更工作目錄,以及 HOME,SHELL,USER,logname。此外,也會(huì)變更PATH 變量-m,-p 或-preserve-environment:變更身份時(shí),不要變

15、更環(huán)境變量-s 或-shell=:指定要執(zhí)行的shell-help:顯示幫助-version;顯示版本信息。示例:su - root22、sudo :讓普通用戶可以擁有指定的 root 權(quán)限功能,需 root 用戶提前授權(quán)sudo useradd kkk23、rpm : 軟件安裝命令rpm -ivh :安裝rpm -e :卸載rpm -e -nodeps :不考慮依賴,強(qiáng)行卸載24、whereis: locate the binary, source, and manual page files for a commandwhereis -b mkdir mkdir: /bin/mkdir25

16、、uname : 查看系統(tǒng)版本-a:-r:-m:uname -a26、halt:關(guān)機(jī) (init 0)27、reboot 重啟(init 6) 28、shutdownshutdown -r now : 重啟shutdown -h now : 關(guān)機(jī)29、lsb_release:顯示系統(tǒng)版本lsb_release -a30、lastlog : 查看用戶是否登錄過31、last : 查看最后登陸過的用戶列表32、file : 查看文件類型33、ln : 創(chuàng)建鏈接文件硬鏈接:源文件與目標(biāo)文件的 inode 號(hào)碼相同,都指向同一個(gè) inode ln 源文件 目標(biāo)文件軟鏈接:相當(dāng)于 windows 中的快

17、捷方式ln -s 源文件 目標(biāo)文件ln -s /abc/def/ghi/jk/ /tmp/jk/可以通過 readlink 軟鏈接名,來查看軟鏈接信息34、stat : 查看文件信息參數(shù):-L, -dereference #follow links-Z, -context #print the SELinux security context-f, -file-system #display file system status instead of file status-c -format=FORMAT #格式化輸出-t, -terse #print the information in

18、terse formThe valid format sequences for files (without -file-system):%aAccess rights in octal(八進(jìn)制權(quán)限 644)%AAccess rights in human readable form(人類可讀模式 rw-r-r-)%bNumber of blocks allocated (see %B)(取 stat 信息中的 Blocks: 后面的值)%BThe size in bytes of each block reported by %b%CSELinux security context str

19、ing%dDevice number in decimal%DDevice number in hex%fRaw mode in hex示例:%FFile type%gGroup ID of owner%GGroup name of ownerstat install.log File: install.log'Size: 62057Blocks: 136IO Block: 4096regular fileDevice: 803h/2051dInode: 391683Links: 1Access: (0644/-rw-r-r-) Uid: (0/root)Gid: (0/root)Ac

20、cess:2017-01-0123:32:26.238999717+0800Modify:2017-01-0200:00:41.324999404+0800Change:2017-01-0200:01:11.062999379+0800stat -c %B etiantian 512stat -c %d etiantian 1792stat -c %G etiantian root35、df : 檢查 linux 服務(wù)器的文件系統(tǒng)的磁盤空間占用情況df -hi-a 全部文件系統(tǒng)列表-h 方便閱讀方式顯示-H 等于“-h”,但是計(jì)算式,1K=1000,而不是 1K=1024-i 顯示 inode

21、 信息-k 區(qū)塊為 1024 字節(jié)-l 只顯示本地文件系統(tǒng)-m 區(qū)塊為 1048576 字節(jié)-no-sync 忽略 sync 命令-P 輸出格式為 POSIX-sync 在取得磁盤信息前,先執(zhí)行 sync 命令-T 文件系統(tǒng)類型選擇參數(shù):-block-size=<區(qū)塊大小> 指定區(qū)塊大小-t<文件系統(tǒng)類型> 只顯示選定文件系統(tǒng)的磁盤信息-x<文件系統(tǒng)類型> 不顯示選定文件系統(tǒng)的磁盤信息-help 顯示幫助信息-version 顯示版本信息36、less : 是對(duì)文件或其它輸出進(jìn)行分頁(yè)顯示的工具(按屏顯示,可以前滾(向下),也可回退(向上)-N #顯示行號(hào)le

22、ss a.txt less -N a.txt37、more:是對(duì)文件或其它輸出進(jìn)行分頁(yè)顯示的工具(按屏顯示,可以前滾(向下),但不能回退(向上)38、man : 查看命令及配置文件的幫助39、touch :創(chuàng)建文件或修改文件時(shí)間戳40、env : 顯示當(dāng)前用戶的環(huán)境變量41、source : 讀取和執(zhí)行配置文件source /etc/sysconfig/i18n 或 . /etc/sysconfig/i18n42、netstat : 查看網(wǎng)絡(luò)狀態(tài)-tcp|-t-udp|-u-raw|-w-listening|-l-all|-a-numeric|-n -program|-pnetstat -ln

23、tup netstat -an43、lsof :列出當(dāng)前系統(tǒng)打開文件的工具(list open files)參數(shù):lsof -c abc 顯示 abc 進(jìn)程現(xiàn)在打開的文件lsof -c -p 1234 列出進(jìn)程號(hào)為 1234 的進(jìn)程所打開的文件lsof -g gid 顯示歸屬 gid 的進(jìn)程情況lsof +d /usr/local/ 顯示目錄下被進(jìn)程開啟的文件lsof +D /usr/local/ 同上,但是會(huì)搜索目錄下的目錄,時(shí)間較長(zhǎng)lsof -d 4 顯示使用 fd 為 4 的進(jìn)程lsof -i 用以顯示符合條件的進(jìn)程情況lsof -i46 protocolhostname|hostadd

24、r:service|port46 -> IPv4 or IPv6 protocol -> TCP or UDPhostname -> Internet host name hostaddr -> IPv4 地址service -> /etc/service 中的 service name (可以不止一個(gè))port -> 端口號(hào) (可以不止一個(gè))輸出各列信息的意義COMMAND:進(jìn)程的名稱 PID:進(jìn)程標(biāo)識(shí)符USER:進(jìn)程所有者FD:文件描述符,應(yīng)用程序通過文件描述符識(shí)別該文件。如 cwd、txt 等 TYPE:文件類型,如 DIR、REG 等DEVICE:指

25、定磁盤的名稱SIZE:文件的大小NODE:索引節(jié)點(diǎn)(文件在磁盤上的標(biāo)識(shí)) NAME:打開文件的確切名稱示例:lsof -i :port:查看端口情況lsof -i :22COMMANDPID USERFDTYPE DEVICE SIZE/OFF NODE NAMEsshd2776 root3u IPv4167240t0 TCP *:ssh (LISTEN)sshd2776 root4u IPv6167300t0 TCP *:ssh (LISTEN)sshd 23312 root 3r IPv4 3417749 0t0 TCP LS-B:ssh->:patrolview

26、(ESTABLISHED)44、crontab 命令crontab-操作每個(gè)用戶的守護(hù)程序和執(zhí)行的時(shí)間表。crontab file -u user-用指定的文件替代目前的 crontab。crontab - -u user-用標(biāo)準(zhǔn)輸入替代目前的 crontab。crontab -l user-列出用戶目前的 crontab。crontab -e user-編輯用戶目前 的 crontab 。crontab -d user-刪除用戶目前 的 crontab 。crontab -c dir -指定 crontab 的目錄。crontab 文件的格式:M H D m d cmdM:分鐘(0-59)H

27、:小時(shí)(0-23)D:天(1-31)m:月份(1-12)d:一星期內(nèi)的天(0-6,0 為星期天)45、historyhistory -d 9 #刪除指定行號(hào)的歷史記錄history -c #刪除所有歷史記錄可以通過配置 HISTCONTROL=ignorespace 環(huán)境變量來指定 history 命令不記錄敏感操作。如: 一般情況會(huì)顯示:history -cmysql -uroot -p123456 histroymysql -uroot -p123456 history使用 HISTCONTROLhistory -c HISTCONTROL=ignorespace mysql -uroot

28、 -p123456 histroyHISTCONTROL=ignorespace history46、seq:打印序列seq -s "," -f "t%01g" 1 5-s:使用分隔符"," :分隔符為了英文逗號(hào)-f:格式化%01g :1 位浮點(diǎn)數(shù)結(jié)果:t1,t2,t3,t4,t547、chkconfigchkconfig -list #列出所有的系統(tǒng)服務(wù)chkconfig -add httpd #增加 httpd 服務(wù)chkconfig -del httpd #刪除 httpd 服務(wù)chkconfig -level httpd 23

29、45 on #設(shè)置httpd 在運(yùn)行級(jí)別為 2、3、4、5 的情況下都是 on(開啟)的狀態(tài)chkconfig -list #列出系統(tǒng)所有的服務(wù)啟動(dòng)情況chkconfig -list mysqld #列出 mysqld 服務(wù)設(shè)置情況chkconfig -level 35 mysqld on #設(shè)定 mysqld 在等級(jí) 3 和 5 為開機(jī)運(yùn)行服務(wù),level 35 表示操作只在等級(jí) 3 和 5 執(zhí)行,on 表示啟動(dòng),off 表示關(guān)閉chkconfig mysqld on #設(shè)定 mysqld 在各等級(jí)為 on,“各等級(jí)”包括 2、3、4、5 等級(jí)48、grep(三劍客之三)參數(shù):-c:只輸出匹

30、配行的計(jì)數(shù)。-i:不區(qū)分大 小寫(只適用于單字符)。-h:查詢多文件時(shí)不顯示文件名。-l:查詢多文件時(shí)只輸出包含匹配字符的文件名。-n:顯示匹配行及 行號(hào)。-s:不顯示不存在或無匹配文本的錯(cuò)誤信息。-v:排除,顯示不包含匹配文本的所有行。-e: 或的意思,可使用多個(gè)條件-E: 使用多個(gè)條件,相當(dāng)于多個(gè)-e,需加雙引號(hào)-color=auto #添加顏色grep -E 相當(dāng)于 egrep示例:grep 'test' d*# 顯示所有以 d 開頭的文件中包含 test 的行。grep 'test' aa bb cc #顯示在 aa,bb,cc 文件中匹配 test 的

31、行。grep linuxtechi /etc/passwd: #在/etc/passwd 文件中查找單詞"linuxtechi"grep -e EST -e WAIT /netstat.log#在 netstat.log 中查找包含 EST 或 WAIT 的行g(shù)rep -E "EST|WAIT" /netstat.log#在 netstat.log 中查找包含 EST 或 WAIT 的行g(shù)rep -v # /etc/ssh/sshd_config#過濾文件/etc/ssh/sshd_config 中所有的注釋grep -Ev "#|$"

32、; /etc/ssh/sshd_config #過濾文件/etc/ssh/sshd_config 中所有的注釋和空行49、sed(三劍客之二)說明sed 是一種在線編輯器,一次處理一行內(nèi)容。處理時(shí),把當(dāng)前處理的行存儲(chǔ)在臨時(shí)緩沖區(qū)中,稱為模式空間(pattern space),接著用 sed 命令處理緩沖區(qū)的內(nèi)容,處理完成后,把緩沖區(qū)的內(nèi)容打印到屏幕。然后處理下一行,至文件末尾。此時(shí),原文件的內(nèi)容不會(huì)改變,除非用-i 參數(shù)來指定sed 修改原文件。sed 的分隔符可以是#,也可以是/。格式:sed -nefri n1,n2command 輸入文本參 數(shù) : 選項(xiàng)參數(shù)-n:取消默認(rèn)打印,只打印 s

33、ed 特殊處理的那一行。-e:直接在指令列模式上進(jìn)行 sed 的動(dòng)作編輯。-f:sed 直接執(zhí)行動(dòng)作文件內(nèi)的動(dòng)作command。-f commandfile-r:使用擴(kuò)展的正則表達(dá)式(默認(rèn)為基礎(chǔ)正則表達(dá)式語(yǔ)法)-i:直接修改讀取的文件的內(nèi)容,不在由屏幕輸出n1,n2一般表示選擇要進(jìn)行動(dòng)作的行數(shù)。如動(dòng)作要?jiǎng)h除在 10 行到 20 行之間的行:10,20dcommand 命令參數(shù)a:新增。新增一行 a 后面的字符串(當(dāng)前行的下一行) c:取代。c 后面的字符串可以取代n1,n2 之間的行d:刪除。i:插入。插入 i 后面的字符串(當(dāng)前行的上一行)p:打印。s:替換。小括號(hào)()分組功能sed -nr

34、 's#abc(.*)#1#gp's#g 中第 1 個(gè)#和第 2 個(gè)#之間的內(nèi)容表示要查找的內(nèi)容,可以用正則表達(dá)式,其中用小括號(hào)()括起來的內(nèi)容,可以在第 2 個(gè)#和第 3 個(gè)#之間用1 來調(diào)用,第 2 個(gè)#和第 3 個(gè)#之間不能用正則表達(dá)式。如查前面有多個(gè)小括號(hào),則1、2、.n 來表示第 1 個(gè)括號(hào)的內(nèi)容,第 2 個(gè)括號(hào)的內(nèi)容。第 n 個(gè)括號(hào)的內(nèi)容。r 表示使用正則表達(dá)式,g 表示全局替換,p 表示打印。由于前面有-n 取消了默認(rèn)輸出,所以必須用參數(shù) p 來打印過濾出的內(nèi)容,否則什么都不會(huì)輸出。示例:sed s#str1#str2#g filename:用 str2 替換 s

35、tr1,只打印,但不改原文件內(nèi)容。-i:表示修改原文件內(nèi)容sed s#oldboylinux#mywindows#g ett.txt:將 oldboylinux 替換成 mywindows sed -i s#oldboylinux#mywindows#g ett.txt :此時(shí) ett.txt 中的內(nèi)容已被替換sed -n 2p #顯示第 2 行sed -n 2,5d #刪除第 2、3、4、5 行sed -n '/oldboylinux/p' ett.txt #過濾出含有 oldboylinux 的行echo 'kkkddd' | sed 's#(kkk

36、)(ddd)#1#g'#kkk echo 'kkkddd' | sed -r 's#(kkk)(ddd)#1#g'#kkkecho 'kkkddd' | sed -r 's#(kkk)(ddd)#12#g'#kkkddd echo 'kkkddd' | sed -r 's#(kkk)(ddd)#1 is a 2#g'# kkk is a ddd刪除 ifconfig eth1 的輸出前后的空格,并將內(nèi)容中的相連的多個(gè)空格替換為一個(gè)空格ifconfig eth1 | sed -r 's

37、# +# #g' | sed -r 's# #g' | sed -r 's# +$#g'在 a.txt 文件的第 1 行插入 1 行內(nèi)容為:wddglogsed -i '1 i wddglog' a.txt # -i 表示修改原文件,1 表示第 1 行,i 表示插入50、awk(三劍客之一)awk -F: 'print $1' /etc/passwd #以:為分隔符,打印/etc/passwd 中的第一列-F:指定分隔符,默認(rèn)分隔符為空格。多個(gè)分隔符需用'',''內(nèi)的全部為分隔符,同時(shí)有效$

38、0:表示一行$1:表示第一列$n:表示第 n 列$NF:表示最后一列NR:表示行號(hào)cat /etc/passwd | awk -F: 'print $1'echo "I am oldboy,myqq is 49000448" | awk -F ' ,' 'print $3" "$6' #以空格和逗號(hào)為分隔符oldboy 4900044851、tar:打包和壓縮/解壓縮命令格式:tar 必選參數(shù)+輔助參數(shù) 包名 需打包的文件或目錄參數(shù):必選參數(shù)-f: 使用檔案名字,切記,這個(gè)參數(shù)是最后一個(gè)參數(shù),后面只能接檔案

39、名必選參數(shù)之只選一(五個(gè)是獨(dú)立的命令,壓縮解壓都要用到其中一個(gè),可以和別的命令連用但只能用其中一個(gè)。)-c: 建立壓縮檔案-x:解壓-t:查看內(nèi)容-r:向壓縮歸檔文件末尾追加文件-u:更新原壓縮包中的文件可選參數(shù)-z:有 gzip 屬性的-j:有 bz2 屬性的-Z:有 compress 屬性的-v:顯示所有過程-O:將文件解開到標(biāo)準(zhǔn)輸出-P: 不提示-C: 改變目錄-X: 打包時(shí)根據(jù)文件列表排除文件-exclude Filename:排除,在壓縮的過程中,不要將 Filename 打包! 常用參數(shù)組合:gzip 打包組合zcvf,解包組合 zxvf bzip 打包組合jcvf,解包組合 jx

40、vf壓縮示例:tar zcvf a.tar.gz /tmp/kkk tar jcvf a.tar.bz /tmp/kkktarzcvfworkspace.tar.gz-exclude/Workspace/LinuxWorkspace/# 打 包 時(shí) 排 除/Workspace/Linuxtar zcvfX workspace.tar.gz a.txt /Workspace/Linux Workspace/#打包時(shí)根據(jù) a.txt 中的文件名排除cat a.txt aa.txt bb.txt cc.txt解壓示例:tar -xvf file.tar#解壓 tar 包tar -xzvf file.

41、tar.gz#解壓 tar.gztar -xjvf file.tar.bz2#解壓 tar.bz2 tar -xZvf file.tar.Z#解壓 tar.Ztar -xvf file2.tar -C /home/usr2 #將 file2.tar 解壓到/home/usr2 下52、cut:從文件的每一行剪切字節(jié)、字符和字段并將這些字節(jié)、字符和字段寫至標(biāo)準(zhǔn)輸出。格式:cut -bn file 或 cut -c file 或 cut -df file參數(shù)-b :以字節(jié)為單位進(jìn)行分割。這些字節(jié)位置將忽略多字節(jié)字符邊界,除非也指定了 -n 標(biāo)志。-c :以字符為單位進(jìn)行分割。-d :自定義分隔符,

42、默認(rèn)為制表符。-f :與-d 一起使用,指定顯示哪列。f3 表示第三列,f3,6 表示第 3 列和第 6 列,f2-5 表示第 2 列到第 5 列-n :取消分割多字節(jié)字符。僅和 -b 標(biāo)志一起使用。如果字符的最后一個(gè)字節(jié)落在由 -b 標(biāo)志的 List 參數(shù)指示的<br />范圍之內(nèi),該字符將被寫出;否則,該字符將被排除。cut 命令主要是接受三個(gè)定位方法: 第一,字節(jié)(bytes),用選項(xiàng)-b第二,字符(characters),用選項(xiàng)-c第三,域(fields),用選項(xiàng)-f示例:cat cut_ch.txt星期一星期二星期三星期四cut -c 3 cut_ch.txt一二三四53

43、、tr:也是替換命令echo "I am oldboy,myqq is 49000448" | tr "," " " #將逗號(hào)替換成空格echo 'abc' | tr 'abc' 'xyz' #x 替換a,y 替換 b,z 替換c54、wc:打印文件的文本行數(shù)、單詞數(shù)、字節(jié)數(shù)參數(shù):-c, -bytes: 打印字節(jié)數(shù)(print the byte counts)-m, -chars:打印字符數(shù)(print the character counts)-l, -lines:打印行數(shù)(print

44、 the newline counts)-L, -max-line-length:打印最長(zhǎng)行的長(zhǎng)度(print the length of the longest line)-w, -words:打印單詞數(shù)(print the word counts) 示例wc -lines /etc/passwd wc -l /etc/passwd55、du: 查看文件和目錄磁盤使用的空間參數(shù):-a 或-all 顯示目錄中個(gè)別文件的大小。-b 或-bytes 顯示目錄或文件大小時(shí),以byte 為單位。-c 或-total 除了顯示個(gè)別目錄或文件的大小外,同時(shí)也顯示所有目錄或文件的總和。-k 或-kiloby

45、tes 以KB(1024bytes)為單位輸出。-m 或-megabytes 以MB 為單位輸出。-s 或-summarize 僅顯示總計(jì),只列出最后加總的值。-h 或-human-readable 以K,M,G 為單位,提高信息的可讀性。-x 或-one-file-xystem 以一開始處理時(shí)的文件系統(tǒng)為準(zhǔn),若遇上其它不同的文件系統(tǒng)目錄則略過。-L<符號(hào)鏈接>或-dereference<符號(hào)鏈接> 顯示選項(xiàng)中所指定符號(hào)鏈接的源文件大小。-S 或-separate-dirs顯示個(gè)別目錄的大小時(shí),并不含其子目錄的大小。-X<文件>或-exclude-from=

46、<文件> 在<文件>指定目錄或文件。-exclude=<目錄或文件>略過指定的目錄或文件。-D 或-dereference-args顯示指定符號(hào)鏈接的源文件大小。-H 或-si 與-h 參數(shù)相同,但是 K,M,G 是以 1000 為換算單位。-l 或-count-links重復(fù)計(jì)算硬件鏈接的文件。示例:(1) 顯示目錄或者文件所占空間du(2) 顯示指定文件所占空間du log2012.log(3) 查看指定目錄的所占空間du scf(4) 顯示多個(gè)文件所占空間du log30.tar.gz log31.tar.gz(5) 只顯示總和的大小du -s scf

47、(6) 方便閱讀的格式顯示du -h test(7) 文件和目錄都顯示du -ah test(8) 顯示幾個(gè)文件或目錄各自占用磁盤空間的大小,還統(tǒng)計(jì)它們的總和du -c log30.tar.gz log31.tar.gz(9) 輸出當(dāng)前目錄下各個(gè)子目錄所使用的空間du -h -max-depth=156、useradd : 建立用戶賬號(hào)格式:useradd -mMnr-c <備注>-d <登入目錄>-e <有效期限>-f <緩沖天數(shù)>-g <群組>-G <群組>-s -u 用戶帳號(hào) 或 useradd -D -b-e &l

48、t;有效期限>-f <緩沖天數(shù)>-g <群組>-G <群組>-s 參數(shù):-c<備注>加上備注文字。備注文字會(huì)保存在 passwd 的備注欄位中。-d<登入目錄>指定用戶登入時(shí)的啟始目錄。-D變更預(yù)設(shè)值-e<有效期限>指定帳號(hào)的有效期限。格式 MM/DD/YY-f<緩沖天數(shù)>指定在密碼過期后多少天即關(guān)閉該帳號(hào)。0:立即停權(quán) -1:關(guān)閉此功能(默認(rèn)值-1)-g<群組>指定用戶所屬的群組。-G<群組>指定用戶所屬的附加群組。-m自動(dòng)建立用戶的登入目錄。-M不要自動(dòng)建立用戶的登入目錄。-n

49、取消建立以用戶名稱為名的群組-r建立系統(tǒng)帳號(hào)。-s指定用戶登入后所使用的 shell。不填寫時(shí),系統(tǒng)根據(jù)/etc/default/useradd 預(yù)設(shè)值指定-u指定用戶 ID。-p 創(chuàng)建用戶時(shí),直接指定密碼,但在 /etc/shadow 文件中以明文顯示,不安全示例:useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle useradd -u 510 test補(bǔ)充說明:useradd 可用來建立用戶帳號(hào)。帳號(hào)建好之后,再用 passwd 設(shè)定帳號(hào)的密碼而可用 userdel 刪除帳號(hào)。使用userad

50、d 指令所建立的帳號(hào),實(shí)際上是保存在/etc/passwd 文本文件中。passwd 設(shè)定的密碼在/etc/shadow 文件中。57、userdel : 刪除用戶參數(shù):-f, -forceforce removal of files, even if not owned by user-h, -helpdisplay this help message and exit-r, -remove在刪除用戶的同時(shí)一起把這個(gè)用戶的宿主目錄和郵件目錄刪除。示例:userdel -r newuser58、date : 根據(jù)給定格式顯示日期或設(shè)置系統(tǒng)日期時(shí)間(1) 格式:date OPTION. +FOR

51、MAT(2) 參數(shù):-d 顯示字符串描述的時(shí)間-f 顯示 DATEFILE 文件中的每行時(shí)間-r 顯示文件的最后修改時(shí)間-R 以 RFC-2822 兼容日期格式顯示時(shí)間-rfc-2822以 RFC-2822 兼容日期格式顯示時(shí)間-s 設(shè)置時(shí)間為 string-u 顯示或設(shè)定為 Coordinated Universal Time 時(shí)間格式-help 顯示 date 命令的幫助信息-version顯示 date 命令的版本信息(3) Format 參數(shù)格式% 顯示字符%a 星期幾的縮寫(Sun.Sat)%A 星期幾的完整名稱(Sunday.Saturday)%b 月份的縮寫(Jan.Dec)%B

52、 月份的完整名稱(January.December)%c 日期與時(shí)間。只輸入 date 指令也會(huì)顯示同樣的結(jié)果%C 世紀(jì)(年份除 100 后去整) 00-99%d 日期(以 01-31 來表示)。%D 日期(含年月日)。%e 一個(gè)月的第幾天 ( 1.31)%F 日期,同%Y-%m-%d%g 年份(yy)%G 年份(yyyy)%h 同 %b%H 小時(shí)(00.23)%I 小時(shí)(01.12)%j 一年的第幾天(001.366)%k 小時(shí)( 0.23)%l 小時(shí)( 1.12)%m 月份(01.12)%M 分鐘(00.59)%n 換 行%N 納秒(000000000.999999999)%p AM or

53、 PM%P am or pm%r 12 小時(shí)制時(shí)間(hh:mm:ss APM)%R 24 小時(shí)制時(shí)間(hh:mm)%s 從 00:00:00 1970-01-01 UTC 開始的秒數(shù)%S 秒 (00.60)%t 制表符%T 24 小時(shí)制時(shí)間(hh:mm:ss)%u 一周的第幾天(1.7); 1 表示星期一%U 一年的第幾周,周日為每周的第一天(00.53)%V 一年的第幾周,周一為每周的第一天 (01.53)%w 一周的第幾天 (0.6); 0 代表周日%W 一年的第幾周,周一為每周的第一天(00.53)%x 日期(mm/dd/yy)%X 時(shí)間(%H:%M:%S)%y 年份(00.99)%Y

54、年 份 (1970)%z RFC-2822 風(fēng)格數(shù)字格式時(shí)區(qū)(-0500)%Z 時(shí)區(qū)(e.g., EDT), 無法確定時(shí)區(qū)則為空(4) 示例:a、設(shè)置系統(tǒng)時(shí)間date -s "2013-11-14 00:00:00"b、按各種格式顯示當(dāng)前日期時(shí)間(i)只顯示當(dāng)前日期的年份date +%Y(ii) 只顯示當(dāng)前日期的月份date +%m(iii) 顯示各種格式類型的日期date +%Ddate '+%Y-%m-%d' date +%Y-%m-%d date +%m/%d/%y date +%m/%d/%Yc、顯示 3 天前的日期date +%F -date=&#

55、39;3 day ago' date +%F -date '3 day ago' date +%F -d '3 day ago' date +%F -d '-3 day'd、顯示明天的日期date +%F -d 'next ago'e、顯示 3 天后的日期date +%F -d '+3 day' date +%F -d '3 day'f、顯示 3 小時(shí)前的時(shí)間date +%H -d '-3 hour'g、顯示 3 小時(shí)以后的時(shí)間date +%H -d '3 hour&

56、#39;h、顯示 6 分鐘以前的時(shí)間echo $(date +%Y%m%d%H%M -d '-6 min')i、顯示 6 分鐘以后的時(shí)間echo $(date +%Y%m%d%H%M -d '6 min')j、顯示 20 秒以前的時(shí)間echo $(date +%Y%m%d%H%M%S -d '-20 sec')k、顯示 20 秒以后的時(shí)間echo $(date +%Y%m%d%H%M%S -d '20 sec')59、hwclock : 顯示與設(shè)定硬件時(shí)鐘在 Linux 中有硬件時(shí)鐘與系統(tǒng)時(shí)鐘等兩種時(shí)鐘。硬件時(shí)鐘是指主機(jī)板上的時(shí)鐘設(shè)備,也就是通??稍贐IOS 畫面設(shè)定的時(shí)鐘。系統(tǒng)時(shí)鐘則是指 kernel 中的時(shí)鐘。當(dāng) Linux 啟動(dòng)時(shí),系統(tǒng)時(shí)鐘會(huì)去讀取硬件時(shí)鐘的設(shè)定, 之后系統(tǒng)時(shí)鐘即獨(dú)立運(yùn)作。所有Linux

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論