學習Linux系統(tǒng),命令是最基礎的一部分,有著很重要的地位,所以入門必須掌握好常用命令。下面由我為大家整理了Linux系統(tǒng)常用的基本命令入門篇,希望對大家有幫助!
目前創(chuàng)新互聯(lián)公司已為成百上千的企業(yè)提供了網(wǎng)站建設、域名、網(wǎng)絡空間、網(wǎng)站托管維護、企業(yè)網(wǎng)站設計、江津網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
Linux系統(tǒng)常用的基本命令入門篇一、基礎命令
1.Linu x的進 入與退出系統(tǒng)
進入Linux系統(tǒng):
必須要輸入用戶的賬號,在系統(tǒng)安裝過程中可以創(chuàng)建以下兩種帳號:
1.root--超級用戶帳號(系統(tǒng)管理員),使用這個帳號可以在系統(tǒng)中做任何事情。
2.普通用戶--這個帳號供普通用戶使用,可以進行有限的操作。
一般的Linux使用者均為普通用戶,而系統(tǒng)管理員一般使用超級用戶帳號完成一些系統(tǒng)管理的工作。如果只需要完成一些由普通帳號就能完成的任務,建議不要使用超級用戶帳號,以免無意中破壞系統(tǒng)。影響系統(tǒng)的正常運行。
用戶登錄分兩步:第一步,輸入用戶的登錄名,系統(tǒng)根據(jù)該登錄名識別用戶;第二步,輸入用戶的口令,該口令是用戶自己設置的一個字符串,對其他用戶是保密的,是在登錄時系統(tǒng)用來辨別真假用戶的關(guān)鍵字。
當用戶正確地輸入用戶名和口令后,就能合法地進入系統(tǒng)。屏幕顯示:
[root@loclhost/root] #
這時就可以對系統(tǒng)做各種操作了。注意超級用戶的提示符是ldquo;#rdquo;,其他用戶的提示符是ldquo;$rdquo;。
2.修改口令
為了更好的保護用戶帳號的安全,Linux允許用戶隨時修改自己的口令,修改口令的命令是passwd,它將提示用戶輸入舊口令和新口令,之后還要求用戶再次確認新口令,以避免用戶無意中按錯鍵。如果用戶忘記了口令,可以向系統(tǒng)管理員申請為自己重新設置一個。
3.虛擬控制臺
Linux是一個真正的多用戶 操作系統(tǒng) ,它可以同時接受多個用戶登錄。Linux還允許一個用戶進行多次登錄,這是因為Linux和UNIX一樣,提供了虛擬控制臺的訪問方式,允許用戶在同一時間從控制臺進行多次登錄。虛擬控制臺的選擇可以通過按下Alt鍵和一個功能鍵來實現(xiàn),通常使用F1-F6例如,用戶登錄后,按一下Alt-F2鍵,用戶又可以看到"login:"提示符,說明用戶看到了第二個虛擬控制臺。然后只需按Alt-F1鍵,就可以回到第一個虛擬控制臺。 一個新安裝的Linux系統(tǒng)默認允許用戶使用Alt-F1到Alt-F6鍵來訪問前六個虛擬控制臺。虛擬控制臺可使用戶同時在多個控制臺上工作,真正體現(xiàn)Linux系統(tǒng)多用戶的特性。用戶可以在某一虛擬控制臺上進行的工作尚未結(jié)束時,切換到另一虛擬控制臺開始另一項工作。
退出系統(tǒng)
不論是超級用戶,還是普通用戶,需要退出系統(tǒng)時,在shell提示符下,鍵入exit命令即可。
4.查看命令幫助信息
man命令
man命令用于查詢命令和程序的使用 方法 和參數(shù)。
例如:
man ls
將顯示ls命令的基本格式和使用方法
Linux系統(tǒng)常用的基本命令入門篇二、關(guān)機重啟命令
首先,是關(guān)機/重啟命令,僅在虛擬機時使用,實際工作中用不到
reboot 一般不跟參數(shù)使用,輸入指令即可重啟
shutdown 一般需要跟參數(shù),例:
shutdown -r 延時多少分鐘重啟,一般使用now
shutdown -r now 立即重啟
shutdown -f 強制重啟
跟windows一樣,linux也存在注銷功能
exit
1)halt
halt 可不接參數(shù)
halt -f 強制關(guān)機
2)poweroff
poweroff 可不接參數(shù)使用
poweroff -f 強制關(guān)機
3)init 0
4)shutdown 不可單獨使用
shutdown -h 分鐘數(shù) 延時多久關(guān)機
shutdown -h now 立即關(guān)機
Linux系統(tǒng)常用的基本命令入門篇三、vi編輯
vi命令是UNIX操作系統(tǒng)和類UNIX操作系統(tǒng)中最通用的全屏幕純文本編輯器。
Linux中的vi編輯器叫vim,它是vi的增強版(vi Improved),與vi編輯器完全兼容,而且實現(xiàn)了很多增強功能。
vi編輯器支持編輯模式和命令模式,編輯模式下可以完成文本的編輯功能,命令模式下可以完成對文件的操作命令,要正確使用vi編輯器就必須熟練掌握著兩種模式的切換。
默認情況下,打開vi編輯器后自動進入命令模式。從編輯模式切換到命令模式使用ldquo;escrdquo;鍵,從命令模式切換到編輯模式使用ldquo;Ardquo;、ldquo;ardquo;、ldquo;Ordquo;、ldquo;ordquo;、ldquo;Irdquo;、ldquo;irdquo;鍵。
vi編輯器提供了豐富的內(nèi)置命令,有些內(nèi)置命令使用鍵盤組合鍵即可完成,有些內(nèi)置命令則需要以冒號ldquo;:rdquo;開頭輸入。常用內(nèi)置命令如下:
1 Ctrl+u:向文件首翻半屏;
2 Ctrl+d:向文件尾翻半屏;
3 Ctrl+f:向文件尾翻一屏;
4 Ctrl+b:向文件首翻一屏;
5 Esc:從編輯模式切換到命令模式;
6 ZZ:命令模式下保存當前文件所做的修改后退出vi;
7 :行號:光標跳轉(zhuǎn)到指定行的行首;
8 :$:光標跳轉(zhuǎn)到最后一行的行首;
9 x或X:刪除一個字符,x刪除光標后的,而X刪除光標前的;
10 D:刪除從當前光標到光標所在行尾的全部字符;
11 dd:刪除光標行正行內(nèi)容;
12 ndd:刪除當前行及其后n-1行;
13 nyy:將當前行及其下n行的內(nèi)容保存到寄存器?中,其中?為一個字母,n為一個數(shù)字;
14 p:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當前光標所在位置的下方;
15 P:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當前光標所在位置的上方;
16 /字符串:文本查找操作,用于從當前光標所在位置開始向文件尾部查找指定字符串的內(nèi)容,查找的字符串會被加亮顯示;
17 ?name:文本查找操作,用于從當前光標所在位置開始向文件頭部查找指定字符串的內(nèi)容,查找的字符串會被加亮顯示;
18 a,bs/F/T:替換文本操作,用于在第a行到第b行之間,將F字符串換成T字符串。其中,ldquo;s/rdquo;表示進行替換操作;
19 a:在當前字符后添加文本;
20 A:在行末添加文本;
21 i:在當前字符前插入文本;
22 I:在行首插入文本;
23 o:在當前行后面插入一空行;
24 O:在當前行前面插入一空行;
25 :wq:在命令模式下,執(zhí)行存盤退出操作;
26 :w:在命令模式下,執(zhí)行存盤操作;
27 :w!:在命令模式下,執(zhí)行強制存盤操作;
28 :q:在命令模式下,執(zhí)行退出vi操作;
29 :q!:在命令模式下,執(zhí)行強制退出vi操作;
30 :e文件名:在命令模式下,打開并編輯指定名稱的文件;
31 :n:在命令模式下,如果同時打開多個文件,則繼續(xù)編輯下一個文件;
32 :f:在命令模式下,用于顯示當前的文件名、光標所在行的行號以及顯示比例;
33 :set nu:在命令模式下,用于在最左端顯示行號;
34 :set nonu:在命令模式下,用于在最左端不顯示行號;
35 :1,3y 復制第一行到第三行
36 :1,3d 刪除第一行到第三行
37 :1,3s/str/str_new/g 替換第一行到第三行中的字符串
38 :1,3s/str/str_new 替換第一行到第三行中的字符串第一個字符
39 :1,3 g/str /d 刪除第一行到第三行中含有這個字符串的行
Linux常用命令一、查詢相關(guān)
find
按規(guī)則查找某個文件或文件夾,包括子目錄
find . -name '_sh' -- 以.sh結(jié)尾的文件
find . -name '_hannel_ -- 包含channel字符的文件
find . -name 'build_ -- 以build開頭的文件
find . -name 'abc??' -- abc后面有兩個字符的文件
grep
查找內(nèi)容包含指定的范本樣式的文件,Global Regular Expression Print
grep -n pattern files -- 規(guī)則 -n表示顯示行號
grep -n 'PostsActivity' AndroidManifest.xmlgrep -n '\d' AndroidManifest.xmlgrep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方
grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并顯示行號
ps -e | grep java -- 所有java進程
ps -e | grep -i qq --所有qq進程,不區(qū)分大小寫
find . -name '_hannel.xml' | xargs grep -n 'aapt' -- 在以channel.xml結(jié)尾的文件中查找包含lsquo;aaptrsquo;關(guān)鍵字的地方
ls | grep 'channel' -- 包含channel關(guān)鍵字的文件
which
在PATH變量指定的路徑中,搜索某個系統(tǒng)命令的位置,并且返回第一個搜索結(jié)果
which zipwhich grep
Linux常用命令二、查看命令
tail
tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File]
從指定點開始將文件寫到標準輸出。使用tail命令的-f選項可以方便的查閱正在改變的日志文件,tail -f filename會把filename里最尾部的內(nèi)容顯示在屏幕上,并且不斷刷新,使你看到最新的文件內(nèi)容。
tail -f test.log,循環(huán)查看文件內(nèi)容,Ctrl+c來終止
tail -n 5 test.log,顯示文件最后5行內(nèi)容
tail -n +5 test.log,從第5行開始顯示文件
more
more [-dlfpcsu] [-num] [+/ pattern] [+linenum] [file...]
more命令和cat的功能一樣都是查看文件里的內(nèi)容,但有所不同的是more可以按頁來查看文件的內(nèi)容,還支持直接跳轉(zhuǎn)行等功能。
more +3 test.log,顯示文件中從第3行起的內(nèi)容
more -5 test.log,設定每屏顯示行數(shù)
ls -l | more -5,每頁顯示5個文件信息
more +/day3 test.log,查找第一個出現(xiàn)"day3"字符串的行,并從該處前兩行開始顯示輸出
less
less [options] [file...]
與more命令一樣,less命令也用來分屏顯示文件的內(nèi)容。但是二者存在差別:less命令允許用戶向前或向后瀏覽文件,而more命令只能向前瀏覽。用less命令顯示文件時,用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程序,應按Q鍵。
less test.log,查看文件
ps -ef | less,查看進程信息并通過less分頁顯示
history | less,查看命令歷史使用記錄并通過less分頁顯示
less test1.log test2.log,瀏覽多個文件,n和p切換文件
watch
watch [options] command
每隔一段時間重復運行一個命令,默認間隔時間是2秒。要運行的命令直接傳給shell(注意引用和轉(zhuǎn)義特殊字符)。結(jié)果會展示為全屏模式,這樣你可以很方便的觀察改變
watch -n 60 date,執(zhí)行date命令每分鐘一次,輸入^C 退出
watch -d ls -l,查看目錄變化
watch -d rsquo;ls -l | fgrep joersquo;,想找joe用戶的文件
watch -d 'ls -l|grep scf',監(jiān)測當前目錄中 scf' 的文件的變化
watch -n 10 'cat /proc/loadavg',10秒一次輸出系統(tǒng)的平均負載
watch -n 1 -d netstat -ant,每隔一秒高亮顯示網(wǎng)絡鏈接數(shù)的變化
watch -n 1 -d 'pstree | grep http',每隔一秒高亮顯示http鏈接數(shù)的變化
Linux常用命令三、文件相關(guān)
vi
vi file
按i鍵,進入編輯模式
按esc鍵,進入命令模式
:w 保存文件但不退出vi
:w file 將修改另外保存到file中,不退出vi
:w! 強制保存,不推出vi
:wq 保存文件并退出vi
:wq! 強制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,強制退出vi
:e! 放棄所有修改,從上次保存文件開始再編輯
chmod
change mode,變更文件或目錄的讀、寫、運行權(quán)限
chmod [-cfvR] [--help] [--version] mode file...
mode:權(quán)限設定字串,格式如下 : [ugoa...][[+-=][rw xX ]...][,...]
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆是
+ 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設定權(quán)限。
r 表示可讀取,w 表示可寫入,x 表示可執(zhí)行,X 表示只有當該檔案是個子目錄或者該檔案已經(jīng)被設定過為可執(zhí)行。
chmod也可以用數(shù)字來表示權(quán)限,語法為:chmod abc file,如chmod 777 file
其中a,b,c各為一個數(shù)字,分別表示User、Group、及Other的權(quán)限。 r=4,w=2,x=1
chmod 777 file,等同于 chmod a=rwx file
chmod ug=rwx,o=x file,等同于 chmod 771 file
chmod 4755 filename,可使此程序具有root的權(quán)限
ls -l 可以查看列出當前用戶的文件權(quán)限
zip
zip -r filename.zip filesdir
zip -r test.zip ./_把當前所有文件壓縮到test.zip
zip -r test.zip test,把test文件所有文件及目錄,要是到test.zip
zip -d test.zip test.txt,刪除壓縮文件中test.txt文件
zip -m test.zip ./test.txt,向壓縮文件中test.zip中添加test.txt文件
zip -r test.zip file1 file2 file3 filesdir,處理多個文件和目錄,空格隔開
unzip
unzip zip-file,解壓到當前目錄
unzip -d dst-dir zip-file,解壓到指定的目錄,-d后為指定目錄
unzip -n zip-file,不覆蓋已經(jīng)存在的文件,-n為不要覆蓋原有的文件
unzip -n -d dst-dir zip-file,解壓到指定的目錄,不覆蓋已經(jīng)原有的文件
unzip -o -d dst-dir zip-file,-o不必先詢問用戶覆蓋原有文件
unzip -l zip-file,僅查看壓縮文件內(nèi)所包含的文件
tar
tar cvf test.tar test,把test下所有文件和目錄做備份tar czvf test.tar.gz test,把test下所有文件和目錄做備份并進行壓縮tar xzvf test.tar.gz,把這個備份文件還原并解壓縮tar tvf test.tar | more,查看備份文件的內(nèi)容,并以分屏方式顯示在 顯示器 上
tar czvf test.tar.gz test --exclude=test/svn,備份壓縮并排除目錄
touch
今日分享開始啦,請大家多多指教~
linux 系統(tǒng)中采用了多用戶的管理方式使用系統(tǒng)
默認用戶是root,有最高的權(quán)限。(在終端顯示為 #)
普通用戶為:$
在linux系統(tǒng)中沒有盤符的概念,以樹的形式管理文件
整個系統(tǒng)的根文件為 /
# 目錄結(jié)構(gòu)
linux系統(tǒng)中命令的使用
在使用linux系統(tǒng)命令的時候,嚴格區(qū)分大小寫
使用命令的語法: 命令 [-選項] 參數(shù)
clear 清屏
1.ls命令
ls 顯示文件和目錄列表(list)
常用參數(shù):
-l (long) 長格式顯示文件和目錄信息
-a (all) 顯示所有文件和目錄(包含隱藏文件和目錄)
-R 遞歸顯示指定目錄下的文件清單,即會顯示指定目錄分支內(nèi)各子目錄中的文件清單。
ls -R ,會遞歸顯示目錄下的文件。
查看指定目錄下的文件
ls /(指定目錄) 例如:ls /etc
查看文件和目錄的組合使用命令
例如 ls -la 指定目錄 查看目錄下所有文件并且長格式展示
2. cd 命令
cd 切換的目錄名
pwd 顯示當前所在目錄
cd /root 回家目錄 或者 cd ~ 或者 cd 快速回家
3.常用操作文件命令
4.ls -l 長格式說明
5.網(wǎng)絡相關(guān)命令
ip addr 查看當前服務器地址
簡寫: ip a
ping ip地址 測試網(wǎng)絡連通性
會一直ping 。Ctrl+c 結(jié)束
6.壓縮相關(guān)命令
tar 命令
-c 建立一個壓縮文件的參數(shù)指令(create) 打包 .tar
-x 解開一個壓縮文件的參數(shù)指令(extract)解壓
-z 是否要用 gzip 壓縮 壓縮 .tar.gz
-v 壓縮過程中顯示文件(日志)
-f 指定打包名字,f后緊跟名字(必有)
例如: tar -zcvf linux.tar.gz aa.txt bb.txt
tar -zxvf linux.tar.gz
7.centos獨有 服務命令
systemctl
8.進程相關(guān)
ps 查詢當前控制臺上運行的進程
動態(tài)顯示進程 top
殺死進程 kill
9.vi 命令
vi /vim 是linux最常用的文本編輯器,功能非常強大。
vi 有三種模式 :
常用命令
10.軟件相關(guān)的命令
rpm 命令 需要有rmp 的安裝包
rpm -ivh gcc-c+ 4.4.7-3.e16.x86_64.rpm
yum命令 [好用,自動檢測依賴下載]
使用yum命令必須連接外部網(wǎng)絡。
11.用戶和組相關(guān)命令
1.查看當前用戶:whoami
查看登錄用戶:who
退出用戶 exit
添加、刪除組賬號:groupadd、groupdel
添加用戶賬號:useradd
設置用戶名密碼:passwd [用戶名]
su 切換用戶
12.權(quán)限相關(guān)命令
linux 文件有三種權(quán)限,r讀,w寫,x執(zhí)行;r=4,w=2,x=1
chmod
今日份分享已結(jié)束,請大家多多包涵和指點!
如何獲?。?/p>
轉(zhuǎn)發(fā)分享此文,后臺私信我:“1”即可獲取。(注:轉(zhuǎn)發(fā)分享,感謝大家)
1、ls命令
ls命令是列出目錄內(nèi)容(List Directory Contents)的意思。運行它就是列出文件夾里的內(nèi)容,可能是文件也可能是文件夾。
2、lsblk命令
"lsblk"就是列出塊設備。除了RAM外,以標準的樹狀輸出格式,整齊地顯示塊設備。
3、查看一個程序是否運行
ps –ef|grep tomcat //查看所有有關(guān)tomcat的進程
4、終止線程
kill -9 19979 //終止線程號位19979的線程
5、查看文件,包含隱藏文件
ls -al
6、當前工作目錄
pwd
7、創(chuàng)建目錄
mkdir newfolder
8、刪除目錄(此目錄是空目錄)
rmdir deleteEmptyFolder
9、刪除文件包括其子文件
rm -rf deleteFile
10、移動文件
mv /temp/movefile /targetFolder//擴展重命名 mv oldNameFile newNameFile
11、切換用戶
su -username
12、修改文件權(quán)限
chmod 777 file.java //file.java的權(quán)限-rwxrwxrwx,r表示讀、w表示寫、x表示可執(zhí)行
13、壓縮文件
tar -czf test.tar.gz /test1 /test2
14、列出壓縮文件列表
tar -tzf test.tar.gz
15、解壓文件
tar -xvzf test.tar.gz
16、查看文件頭10行
head -n 10 example.txt
17、查看文件尾10行
tail -n 10 example.txt
18、查看日志文件
tail -f exmaple.log //這個命令會自動顯示新增內(nèi)容,屏幕只顯示10行內(nèi)容的(可設置)。
19、啟動Vi編輯器
vi
20、查看系統(tǒng)當前時間
date
命令會輸出 周幾 幾月 幾日 時間 和 時間顯示格式 和年份
Sat Feb 22 15:36:49 CST 2019
date +”%Y-%m-%d”
Linux常用的命令可以分為以下幾類:安裝和登錄命令、文件處理命令、系統(tǒng)管理相關(guān)命令、網(wǎng)絡操作命令、系統(tǒng)安全相關(guān)命令、其它命令。
安裝和登錄命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
系統(tǒng)管理相關(guān)命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
網(wǎng)絡操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup。
系統(tǒng)安全相關(guān)命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
Linux簡介
Linux,全稱GNU/Linux,是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統(tǒng)。伴隨著互聯(lián)網(wǎng)的發(fā)展,Linux得到了來自全世界軟件愛好者、組織、公司的支持。
它除了在服務器方面保持著強勁的發(fā)展勢頭以外,在個人電腦、嵌入式系統(tǒng)上都有著長足的進步。使用者不僅可以直觀地獲取該操作系統(tǒng)的實現(xiàn)機制,而且可以根據(jù)自身的需要來修改完善Linux,使其最大化地適應用戶的需要。
Linux不僅系統(tǒng)性能穩(wěn)定,而且是開源軟件。其核心防火墻組件性能高效、配置簡單,保證了系統(tǒng)的安全。在很多企業(yè)網(wǎng)絡中,為了追求速度和安全,Linux不僅僅是被網(wǎng)絡運維人員當作服務器使用,甚至當作網(wǎng)絡防火墻,這是Linux的一大亮點。
ls會列舉出當前工作目錄的內(nèi)容(文件或文件夾)。
mkdir 用于新建一個新目錄
顯示當前工作目錄
切換文件路徑,cd 將給定的文件夾(或目錄)設置成當前工作目錄。
刪除給定的目錄。
rm 會刪除給定的文件
cp 命令對文件進行復制
mv 命令對文件或文件夾進行移動,如果文件或文件夾存在于當前工作目錄,還可以對文件或文件夾進行重命名。
cat 用于在標準輸出(監(jiān)控器或屏幕)上查看文件內(nèi)容
ail 默認在標準輸出上顯示給定文件的最后10行內(nèi)容,可以使用tail -n N 指定在標準輸出上顯示文件的最后N行內(nèi)容。
less 按頁或按窗口打印文件內(nèi)容。在查看包含大量文本數(shù)據(jù)的大文件時是非常有用和高效的。你可以使用Ctrl+F向前翻頁,Ctrl+B向后翻頁。
grep 在給定的文件中搜尋指定的字符串。grep -i “” 在搜尋時會忽略字符串的大小寫,而grep -r “” 則會在當前工作目錄的文件中遞歸搜尋指定的字符串。
這個命令會在給定位置搜尋與條件匹配的文件。你可以使用find -name 的-name選項來進行區(qū)分大小寫的搜尋,find -iname 來進行不區(qū)分大小寫的搜尋。
tar命令能創(chuàng)建、查看和提取tar壓縮文件。tar -cvf 是創(chuàng)建對應壓縮文件,tar -tvf 來查看對應壓縮文件,tar -xvf 來提取對應壓縮文件。
gzip 命令創(chuàng)建和提取gzip壓縮文件,還可以用gzip -d 來提取壓縮文件。
unzip 對gzip文檔進行解壓。在解壓之前,可以使用unzip -l 命令查看文件內(nèi)容。
help會在終端列出所有可用的命令,可以使用任何命令的-h或-help選項來查看該命令的具體用法。圖就省略啦,會有詳細列表顯示出來的。
whatis 會用單行來描述給定的命令,就是解釋當前命令。
exit用于結(jié)束當前的終端會話。
ping 通過發(fā)送數(shù)據(jù)包ping遠程主機(服務器),常用與檢測網(wǎng)絡連接和服務器狀態(tài)。
who能列出當前登錄的用戶名。
su 用于切換不同的用戶。即使沒有使用密碼,超級用戶也能切換到其它用戶。
uname會顯示出關(guān)于系統(tǒng)的重要信息,如內(nèi)核名稱、主機名、內(nèi)核版本、處理機類型等等,使用uname -a可以查看所有信息。
df查看文件系統(tǒng)中磁盤的使用情況–硬盤已用和可用的存儲空間以及其它存儲設備。你可以使用df -h將結(jié)果以人類可讀的方式顯示。
ps顯示系統(tǒng)的運行進程。
top命令會默認按照CPU的占用情況,顯示占用量較大的進程,可以使用top -u 查看某個用戶的CPU使用排名情況。
shutdown用于關(guān)閉計算機,而shutdown -r用于重啟計算機。這個我就不試了......
在Unix/Linux下,高效工作方式不是操作圖形頁面,而是命令行操作,命令行意味著更容易自動化。使用過Linux系統(tǒng)的朋友應該都知道它的命令行強大之處。話說回來了,以下這些命令使用技巧你又知道多少呢?
1、Vim自動添加注釋及智能換行
# vi ~/.vimrc set autoindentset tabstop=4set shiftwidth=4function AddTitle()call setline(1,"#!/bin/bash")call append(1,"#====================================================")call append(2,"# Author: lizhenliang")call append(3,"# Create Date: " . strftime("%Y-%m-%d"))call append(4,"# Description: ")call append(5,"#====================================================")endfmap F4 :call AddTitle()cr
打開文件后,按F4就會自動添加注釋,省了不少時間:
2、查找并刪除/data這個目錄7天前創(chuàng)建的文件
# find /data -ctime +7 -exec rm -rf {} \;# find /data -ctime +7 | xargs rm -rf
3、tar命令壓縮排除某個目錄
# tar zcvf data.tar.gz /data --exclude=tmp #--exclude參數(shù)為不包含某個目錄或文件,后面也可以跟多個
4、查看tar包存檔文件,不解壓
# tar tf data.tar.gz #t是列出存檔文件目錄,f是指定存檔文件
5、使用stat命令查看一個文件的屬性
訪問時間(Access)、修改時間(modify)、狀態(tài)改變時間(Change)stat index.phpAccess: 2018-05-10 02:37:44.169014602 -0500Modify: 2018-05-09 10:53:14.395999032 -0400Change: 2018-05-09 10:53:38.855999002 -0400
6、批量解壓tar.gz
方法1:# find . -name "*.tar.gz" -exec tar zxf {} \;方法2:# for tar in *.tar.gz; do tar zxvf $tar; done方法3:# ls *.tar.gz | xargs -i tar zxvf {}
7、篩除出文件中的注釋和空格
方法1:# grep -v "^#" httpd.conf |grep -v "^$"方法2:# sed -e ‘/^$/d’ -e ‘/^#/d’ httpd.conf http.conf或者# sed -e '/^#/d;/^$/d' #-e 執(zhí)行多條sed命令方法3:# awk '/^[^#]/|/"^$"' httpd.conf 或者# awk '!/^#|^$/' httpd.conf
8、篩選/etc/passwd文件中所有的用戶
方法1:# cat /etc/passwd |cut -d: -f1方法2:# awk -F ":" '{print $1}' /etc/passwd
9、iptables網(wǎng)站跳轉(zhuǎn)
先開啟路由轉(zhuǎn)發(fā):echo "1" /proc/sys/net/ipv4/ip_forward #臨時生效內(nèi)網(wǎng)訪問外網(wǎng)(SNAT):iptables –t nat -A POSTROUTING -s [內(nèi)網(wǎng)IP或網(wǎng)段] -j SNAT --to [公網(wǎng)IP]#內(nèi)網(wǎng)服務器要指向防火墻內(nèi)網(wǎng)IP為網(wǎng)關(guān)公網(wǎng)訪問內(nèi)網(wǎng)(DNAT)(公網(wǎng)端口映射內(nèi)網(wǎng)端口):iptables –t nat -A PREROUTING -d [對外IP] -p tcp --dport [對外端口] -j DNAT --to [內(nèi)網(wǎng)IP:內(nèi)網(wǎng)端口]#內(nèi)網(wǎng)服務器要配置防火墻內(nèi)網(wǎng)IP為網(wǎng)關(guān),否則數(shù)據(jù)包回不來。另外,這里不用配置SNAT,因為系統(tǒng)服務會根據(jù)數(shù)據(jù)包來源再返回去。
10、iptables將本機80端口轉(zhuǎn)發(fā)到本地8080端口
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
11、find命令查找文件并復制到/opt目錄
方法1:# find /etc -name httpd.conf -exec cp -rf {} /opt/ \;: #-exec執(zhí)行后面命令,{}代表前面輸出的結(jié)果,\;結(jié)束命令方法2:# find /etc -name httpd.conf |xargs -i cp {} /opt #-i表示輸出的結(jié)果由{}代替
12、查看根目錄下大于1G的文件
# find / -size +1024M 默認單位是b,可以使用其他單位如,C、K、M
13、查看服務器IP連接數(shù)
# netstat -tun | awk '{print $5}' | cut -d: -f1 |sort | uniq -c | sort -n -tun:-tu是顯示tcp和udp連接,n是以IP地址顯示cut -d:-f1:cut是一個選擇性顯示一行的內(nèi)容命令,-d指定:為分隔符,-f1顯示分隔符后的第一個字段。uniq -c:報告或刪除文中的重復行,-c在輸出行前面加上出現(xiàn)的次數(shù)sort -n:根據(jù)不同類型進行排序,默認排序是升序,-r參數(shù)改為降序,-n是根據(jù)數(shù)值的大小進行排序
14、插入一行到391行,包括特殊符號"/"
# sed -i "391 s/^/AddType application\/x-httpd-php .php .html/" httpd.conf
15、列出nginx日志訪問最多的10個IP
方法1:# awk '{print $1}' access.log |sort |uniq -c|sort -nr |head -n 10sort :排序uniq -c:合并重復行,并記錄重復次數(shù)sort -nr :按照數(shù)字進行降序排序方法2:# awk '{a[$1]++}END{for(v in a)print v,a[v] |"sort -k2 -nr |head -10"}' access.log
16、顯示nginx日志一天訪問量最多的前10位IP
# awk '$4="[16/May/2017:00:00:01" $4="[16/May/2017:23:59:59"' access_test.log |sort |uniq -c |sort-nr |head -n 10# awk '$4="[16/Oct/2017:00:00:01" $4="[16/Oct/2017:23:59:59"{a[$1]++}END{for(i in a){print a[i],i|"sort -k1 -nr |head -n 10"}}' access.log
17、獲取當前時間前一分鐘日志訪問量
# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"` ; awk -vd=$date '$0~d{c++}END{print c}' access.log# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"`; awk -vd=$date '$4="["d":00" $4="["d":59"{c++}END{print c}' access.log # grep `date +%d/%b/%Y:%H:%M --date="-1 minute"` access.log |awk 'END{print NR}'# start_time=`date +%d/%b/%Y:%H:%M:%S --date="-5 minute"`;end_time=`date +%d/%b/%Y:%H:%M:%S`;awk -vstart_time="[$start_time" -vend_time="[$end_time" '$4=start_time $4=end_time{count++}END{print count}' access.log
18、找出1-255之間的整數(shù)
方法1:# ifconfig |grep -o '[0-9]\+' #+號匹配前一個字符一次或多次方法2:# ifconfig |egrep -o '\([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\'
19、找出IP地址
# ifconfig |grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' #-o只顯示匹配字符
20、給文檔增加開頭和結(jié)尾說明信息
# awk ‘BEGIN{print "開頭顯示信息"}{print $1,$NF} END{print "結(jié)尾顯示信息"}’/etc/passwd# awk 'BEGIN{printf " date ip\n------------------\n"} {print $3,$4} END{printf "------------------\nend...\n"}' /var/log/messages date ip------------------03:13:01 localhost10:51:45 localhost------------------end...
21、查看網(wǎng)絡狀態(tài)命令
# netstat -antp #查看所有網(wǎng)絡連接# netstat -lntp #只查看監(jiān)聽的端口信息# lsof -p pid #查看進程打開的文件句柄# lsof -i:80 #查看端口被哪個進程占用
22、生成8位隨機字符串
方法1:# echo $RANDOM |md5sum |cut -c 1-8方法2:# openssl rand -base64 4方法3:# cat /proc/sys/kernel/random/uuid | cut -c 1-8
23、while死循環(huán)
while true; do #條件精確等于真,也可以直接用條件[ "1" == "1" ],條件一直為真ping -c 2
24.awk格式化輸出
將文本列進行左對齊或右對齊。
左對齊:# awk '{printf "%-15s %-10s %-20s\n",$1,$2,$3}' test.txt右對齊:# awk '{printf "%15s %10s %20s\n",$1,$2,$3}' test.txt
25.整數(shù)運算保留小數(shù)點
方法1:# echo 'scale=2; 10/3;'|bc #scale參數(shù)代表取小數(shù)點位數(shù)方法2:# awk BEGIN'{printf "%.2f\n",10/3}'
26.數(shù)字求和
# cat a.txt10235356方法1:#!/bin/bashwhile read num;dosum=`expr $sum + $num`done a.txtecho $sum方法2:# cat a.txt |awk '{sum+=$1}END{print sum}'
27、判斷是否為數(shù)字(字符串判斷也如此)
# [[ $num =~ ^[0-9]+$ ]] echo yes || echo no #[[]]比[]更加通用,支持模式匹配=~和字符串比較使用通配符`^ $:從開始到結(jié)束是數(shù)字才滿足條件=~:一個操作符,表示左邊是否滿足右邊(作為一個模式)正則表達式
28、刪除換行符并將空格替換別的字符
# cat a.txt |xargs echo -n |sed 's/[ ]/|/g' #-n 不換行# cat a.txt |tr -d '\n' #刪除換行符
29、查看文本中20至30行內(nèi)容(總共100行)
方法1:# awk '{if(NR 20 NR 31) print $0}' test.txt方法2:# sed -n '20,30p' test.txt 方法3:# head -30 test.txt |tail
30、文本中兩列位置替換
# cat a.txt60.35.1.15 awk '{print $2"\t"$1}' a.txt