Linux常用的命令可以分為以下幾類:安裝和登錄命令、文件處理命令、系統(tǒng)管理相關(guān)命令、網(wǎng)絡(luò)操作命令、系統(tǒng)安全相關(guān)命令、其它命令。
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的梅里斯網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
安裝和登錄命令: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)絡(luò)操作命令: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簡(jiǎn)介
Linux,全稱GNU/Linux,是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個(gè)基于POSIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。伴隨著互聯(lián)網(wǎng)的發(fā)展,Linux得到了來自全世界軟件愛好者、組織、公司的支持。
它除了在服務(wù)器方面保持著強(qiáng)勁的發(fā)展勢(shì)頭以外,在個(gè)人電腦、嵌入式系統(tǒng)上都有著長(zhǎng)足的進(jìn)步。使用者不僅可以直觀地獲取該操作系統(tǒng)的實(shí)現(xiàn)機(jī)制,而且可以根據(jù)自身的需要來修改完善Linux,使其最大化地適應(yīng)用戶的需要。
Linux不僅系統(tǒng)性能穩(wěn)定,而且是開源軟件。其核心防火墻組件性能高效、配置簡(jiǎn)單,保證了系統(tǒng)的安全。在很多企業(yè)網(wǎng)絡(luò)中,為了追求速度和安全,Linux不僅僅是被網(wǎng)絡(luò)運(yùn)維人員當(dāng)作服務(wù)器使用,甚至當(dāng)作網(wǎng)絡(luò)防火墻,這是Linux的一大亮點(diǎn)。
linux常用的語言就是shell和python,首先我們得先了解語言的概念
-EOF
EOF
編寫一個(gè)簡(jiǎn)單的bash檔如下:
我們可以看到用./執(zhí)行bash檔時(shí),沒有進(jìn)入到/home目錄下,這種我們稱為 在子shell中執(zhí)行 ,其不影響當(dāng)前shell的狀況(有時(shí)候執(zhí)行成功沒有效果的原因)。但是無論是. 執(zhí)行還是source執(zhí)行我們都成功進(jìn)入了home路徑下,這我們稱之為 在當(dāng)前shell執(zhí)行
su nologinshell 不加載用戶的shell
su - loginshell 加載用戶的shell
可以很明顯的看出來,當(dāng)用不加載用戶的shell加載用戶時(shí),是不會(huì)具有當(dāng)前加載用戶的權(quán)限的,很像windows中的游客模式
history歷史記錄緩存
~/.bash_history退出后寫入緩存
~/.bash_logout退出后執(zhí)行
在這一層,順帶按圖索驥,理解一下linux系統(tǒng)開機(jī)的歷程。紅字:系統(tǒng)層開機(jī)/切換用戶歷程;藍(lán)字:用戶層開機(jī)/切換用戶歷程;黃字:用戶層關(guān)機(jī)歷程。
曾經(jīng)玩過一個(gè)游戲:在用戶指令關(guān)機(jī)時(shí),會(huì)有一輛小火車開過,所以我們可以把調(diào)用小火車開過的程式調(diào)用寫在?
1、命令和文件的自動(dòng)補(bǔ)齊 shift
2、命令的歷史記憶功能:上下鍵、!number 執(zhí)行第多少條命令、
!string 找到最近以string開頭的命令、! 上一個(gè)命令最后的參數(shù)、
!! 執(zhí)行上一個(gè)命令、^R 搜索歷史命令
3、別名功能:alias 查看別名、unalias 取消別名、(命名前加\斜線跳過別名)
alias xx=’xx’ 定義臨時(shí)別名、vim ~/.bashrc 定義永久別名
4.快捷鍵:^D 退出、^A 光標(biāo)移動(dòng)到命令最前、^E 光標(biāo)移動(dòng)到命令最后、
^L 清屏、^U 往前的刪掉、^K 往后的刪掉、^Y 撤銷、^M 回車
^S 鎖屏、^Q 解除鎖屏
5.前后臺(tái)作業(yè)控制: 后臺(tái)不保留、nohup 后臺(tái)保留、screen
; || (命令返回值echo ?)
*任意多個(gè)字符
?任意一個(gè)字符
[]匹配括號(hào)內(nèi)任意一個(gè)字符
()在子shell中執(zhí)行
{}集合
\轉(zhuǎn)義字符
注意點(diǎn):echo -e “a\tb”
$? 前一條命令的執(zhí)行成功與否
$1 傳入的第一個(gè)參數(shù) $2 $3 位置變量
沒有使用環(huán)境變量的必要性
練習(xí)內(nèi)容:讀取用戶指定文檔的ip連通性
bc計(jì)算器
假設(shè)我們定義了一個(gè)變量為:
記憶的方法為:
利用${ } 還可針對(duì)不同的變數(shù)狀態(tài)賦值(沒設(shè)定、空值、非空值):
linux常用命令如下:
1、查看內(nèi)核版本:uname -a。
2、控制臺(tái)-圖形界面:init 5或者startx。
3、圖形界面-控制臺(tái): init3或者直接注銷。
4、如何查看ip地址:ifconfig。
5、配置ip:ifconfig eth0 ip地址。
6、重啟:reboot 或者 shutdown -r now。
操作命令
首先介紹一個(gè)名詞“控制臺(tái)”,它就是我們通常見到的使用字符操作界面的人機(jī)接口,例如dos。我們說控制臺(tái)命令,就是指通過字符界面輸入的可以操作系統(tǒng)的命令,例如dos命令就是控制臺(tái)命令。我們要了解的是基于Linux操作系統(tǒng)的基本控制臺(tái)命令和dos命令不同的是,Linux的命令(也包括文件名等等)對(duì)大小寫是敏感的。
學(xué)習(xí)Linux系統(tǒng),命令是最基礎(chǔ)的一部分,有著很重要的地位,所以入門必須掌握好常用命令。下面由我為大家整理了Linux系統(tǒng)常用的基本命令入門篇,希望對(duì)大家有幫助!
Linux系統(tǒng)常用的基本命令入門篇一、基礎(chǔ)命令
1.Linu x的進(jìn) 入與退出系統(tǒng)
進(jìn)入Linux系統(tǒng):
必須要輸入用戶的賬號(hào),在系統(tǒng)安裝過程中可以創(chuàng)建以下兩種帳號(hào):
1.root--超級(jí)用戶帳號(hào)(系統(tǒng)管理員),使用這個(gè)帳號(hào)可以在系統(tǒng)中做任何事情。
2.普通用戶--這個(gè)帳號(hào)供普通用戶使用,可以進(jìn)行有限的操作。
一般的Linux使用者均為普通用戶,而系統(tǒng)管理員一般使用超級(jí)用戶帳號(hào)完成一些系統(tǒng)管理的工作。如果只需要完成一些由普通帳號(hào)就能完成的任務(wù),建議不要使用超級(jí)用戶帳號(hào),以免無意中破壞系統(tǒng)。影響系統(tǒng)的正常運(yùn)行。
用戶登錄分兩步:第一步,輸入用戶的登錄名,系統(tǒng)根據(jù)該登錄名識(shí)別用戶;第二步,輸入用戶的口令,該口令是用戶自己設(shè)置的一個(gè)字符串,對(duì)其他用戶是保密的,是在登錄時(shí)系統(tǒng)用來辨別真假用戶的關(guān)鍵字。
當(dāng)用戶正確地輸入用戶名和口令后,就能合法地進(jìn)入系統(tǒng)。屏幕顯示:
[root@loclhost/root] #
這時(shí)就可以對(duì)系統(tǒng)做各種操作了。注意超級(jí)用戶的提示符是ldquo;#rdquo;,其他用戶的提示符是ldquo;$rdquo;。
2.修改口令
為了更好的保護(hù)用戶帳號(hào)的安全,Linux允許用戶隨時(shí)修改自己的口令,修改口令的命令是passwd,它將提示用戶輸入舊口令和新口令,之后還要求用戶再次確認(rèn)新口令,以避免用戶無意中按錯(cuò)鍵。如果用戶忘記了口令,可以向系統(tǒng)管理員申請(qǐng)為自己重新設(shè)置一個(gè)。
3.虛擬控制臺(tái)
Linux是一個(gè)真正的多用戶 操作系統(tǒng) ,它可以同時(shí)接受多個(gè)用戶登錄。Linux還允許一個(gè)用戶進(jìn)行多次登錄,這是因?yàn)長(zhǎng)inux和UNIX一樣,提供了虛擬控制臺(tái)的訪問方式,允許用戶在同一時(shí)間從控制臺(tái)進(jìn)行多次登錄。虛擬控制臺(tái)的選擇可以通過按下Alt鍵和一個(gè)功能鍵來實(shí)現(xiàn),通常使用F1-F6例如,用戶登錄后,按一下Alt-F2鍵,用戶又可以看到"login:"提示符,說明用戶看到了第二個(gè)虛擬控制臺(tái)。然后只需按Alt-F1鍵,就可以回到第一個(gè)虛擬控制臺(tái)。 一個(gè)新安裝的Linux系統(tǒng)默認(rèn)允許用戶使用Alt-F1到Alt-F6鍵來訪問前六個(gè)虛擬控制臺(tái)。虛擬控制臺(tái)可使用戶同時(shí)在多個(gè)控制臺(tái)上工作,真正體現(xiàn)Linux系統(tǒng)多用戶的特性。用戶可以在某一虛擬控制臺(tái)上進(jìn)行的工作尚未結(jié)束時(shí),切換到另一虛擬控制臺(tái)開始另一項(xiàng)工作。
退出系統(tǒng)
不論是超級(jí)用戶,還是普通用戶,需要退出系統(tǒng)時(shí),在shell提示符下,鍵入exit命令即可。
4.查看命令幫助信息
man命令
man命令用于查詢命令和程序的使用 方法 和參數(shù)。
例如:
man ls
將顯示ls命令的基本格式和使用方法
Linux系統(tǒng)常用的基本命令入門篇二、關(guān)機(jī)重啟命令
首先,是關(guān)機(jī)/重啟命令,僅在虛擬機(jī)時(shí)使用,實(shí)際工作中用不到
reboot 一般不跟參數(shù)使用,輸入指令即可重啟
shutdown 一般需要跟參數(shù),例:
shutdown -r 延時(shí)多少分鐘重啟,一般使用now
shutdown -r now 立即重啟
shutdown -f 強(qiáng)制重啟
跟windows一樣,linux也存在注銷功能
exit
1)halt
halt 可不接參數(shù)
halt -f 強(qiáng)制關(guān)機(jī)
2)poweroff
poweroff 可不接參數(shù)使用
poweroff -f 強(qiáng)制關(guān)機(jī)
3)init 0
4)shutdown 不可單獨(dú)使用
shutdown -h 分鐘數(shù) 延時(shí)多久關(guān)機(jī)
shutdown -h now 立即關(guān)機(jī)
Linux系統(tǒng)常用的基本命令入門篇三、vi編輯
vi命令是UNIX操作系統(tǒng)和類UNIX操作系統(tǒng)中最通用的全屏幕純文本編輯器。
Linux中的vi編輯器叫vim,它是vi的增強(qiáng)版(vi Improved),與vi編輯器完全兼容,而且實(shí)現(xiàn)了很多增強(qiáng)功能。
vi編輯器支持編輯模式和命令模式,編輯模式下可以完成文本的編輯功能,命令模式下可以完成對(duì)文件的操作命令,要正確使用vi編輯器就必須熟練掌握著兩種模式的切換。
默認(rèn)情況下,打開vi編輯器后自動(dòng)進(jìn)入命令模式。從編輯模式切換到命令模式使用ldquo;escrdquo;鍵,從命令模式切換到編輯模式使用ldquo;Ardquo;、ldquo;ardquo;、ldquo;Ordquo;、ldquo;ordquo;、ldquo;Irdquo;、ldquo;irdquo;鍵。
vi編輯器提供了豐富的內(nèi)置命令,有些內(nèi)置命令使用鍵盤組合鍵即可完成,有些內(nèi)置命令則需要以冒號(hào)ldquo;:rdquo;開頭輸入。常用內(nèi)置命令如下:
1 Ctrl+u:向文件首翻半屏;
2 Ctrl+d:向文件尾翻半屏;
3 Ctrl+f:向文件尾翻一屏;
4 Ctrl+b:向文件首翻一屏;
5 Esc:從編輯模式切換到命令模式;
6 ZZ:命令模式下保存當(dāng)前文件所做的修改后退出vi;
7 :行號(hào):光標(biāo)跳轉(zhuǎn)到指定行的行首;
8 :$:光標(biāo)跳轉(zhuǎn)到最后一行的行首;
9 x或X:刪除一個(gè)字符,x刪除光標(biāo)后的,而X刪除光標(biāo)前的;
10 D:刪除從當(dāng)前光標(biāo)到光標(biāo)所在行尾的全部字符;
11 dd:刪除光標(biāo)行正行內(nèi)容;
12 ndd:刪除當(dāng)前行及其后n-1行;
13 nyy:將當(dāng)前行及其下n行的內(nèi)容保存到寄存器?中,其中?為一個(gè)字母,n為一個(gè)數(shù)字;
14 p:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當(dāng)前光標(biāo)所在位置的下方;
15 P:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當(dāng)前光標(biāo)所在位置的上方;
16 /字符串:文本查找操作,用于從當(dāng)前光標(biāo)所在位置開始向文件尾部查找指定字符串的內(nèi)容,查找的字符串會(huì)被加亮顯示;
17 ?name:文本查找操作,用于從當(dāng)前光標(biāo)所在位置開始向文件頭部查找指定字符串的內(nèi)容,查找的字符串會(huì)被加亮顯示;
18 a,bs/F/T:替換文本操作,用于在第a行到第b行之間,將F字符串換成T字符串。其中,ldquo;s/rdquo;表示進(jìn)行替換操作;
19 a:在當(dāng)前字符后添加文本;
20 A:在行末添加文本;
21 i:在當(dāng)前字符前插入文本;
22 I:在行首插入文本;
23 o:在當(dāng)前行后面插入一空行;
24 O:在當(dāng)前行前面插入一空行;
25 :wq:在命令模式下,執(zhí)行存盤退出操作;
26 :w:在命令模式下,執(zhí)行存盤操作;
27 :w!:在命令模式下,執(zhí)行強(qiáng)制存盤操作;
28 :q:在命令模式下,執(zhí)行退出vi操作;
29 :q!:在命令模式下,執(zhí)行強(qiáng)制退出vi操作;
30 :e文件名:在命令模式下,打開并編輯指定名稱的文件;
31 :n:在命令模式下,如果同時(shí)打開多個(gè)文件,則繼續(xù)編輯下一個(gè)文件;
32 :f:在命令模式下,用于顯示當(dāng)前的文件名、光標(biāo)所在行的行號(hào)以及顯示比例;
33 :set nu:在命令模式下,用于在最左端顯示行號(hào);
34 :set nonu:在命令模式下,用于在最左端不顯示行號(hào);
35 :1,3y 復(fù)制第一行到第三行
36 :1,3d 刪除第一行到第三行
37 :1,3s/str/str_new/g 替換第一行到第三行中的字符串
38 :1,3s/str/str_new 替換第一行到第三行中的字符串第一個(gè)字符
39 :1,3 g/str /d 刪除第一行到第三行中含有這個(gè)字符串的行
Linux常用命令一、查詢相關(guān)
find
按規(guī)則查找某個(gè)文件或文件夾,包括子目錄
find . -name '_sh' -- 以.sh結(jié)尾的文件
find . -name '_hannel_ -- 包含channel字符的文件
find . -name 'build_ -- 以build開頭的文件
find . -name 'abc??' -- abc后面有兩個(gè)字符的文件
grep
查找內(nèi)容包含指定的范本樣式的文件,Global Regular Expression Print
grep -n pattern files -- 規(guī)則 -n表示顯示行號(hào)
grep -n 'PostsActivity' AndroidManifest.xmlgrep -n '\d' AndroidManifest.xmlgrep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方
grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并顯示行號(hào)
ps -e | grep java -- 所有java進(jìn)程
ps -e | grep -i qq --所有qq進(jìn)程,不區(qū)分大小寫
find . -name '_hannel.xml' | xargs grep -n 'aapt' -- 在以channel.xml結(jié)尾的文件中查找包含lsquo;aaptrsquo;關(guān)鍵字的地方
ls | grep 'channel' -- 包含channel關(guān)鍵字的文件
which
在PATH變量指定的路徑中,搜索某個(gè)系統(tǒng)命令的位置,并且返回第一個(gè)搜索結(jié)果
which zipwhich grep
Linux常用命令二、查看命令
tail
tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File]
從指定點(diǎn)開始將文件寫到標(biāo)準(zhǔn)輸出。使用tail命令的-f選項(xiàng)可以方便的查閱正在改變的日志文件,tail -f filename會(huì)把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è)定每屏顯示行數(shù)
ls -l | more -5,每頁顯示5個(gè)文件信息
more +/day3 test.log,查找第一個(gè)出現(xiàn)"day3"字符串的行,并從該處前兩行開始顯示輸出
less
less [options] [file...]
與more命令一樣,less命令也用來分屏顯示文件的內(nèi)容。但是二者存在差別:less命令允許用戶向前或向后瀏覽文件,而more命令只能向前瀏覽。用less命令顯示文件時(shí),用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程序,應(yīng)按Q鍵。
less test.log,查看文件
ps -ef | less,查看進(jìn)程信息并通過less分頁顯示
history | less,查看命令歷史使用記錄并通過less分頁顯示
less test1.log test2.log,瀏覽多個(gè)文件,n和p切換文件
watch
watch [options] command
每隔一段時(shí)間重復(fù)運(yùn)行一個(gè)命令,默認(rèn)間隔時(shí)間是2秒。要運(yùn)行的命令直接傳給shell(注意引用和轉(zhuǎn)義特殊字符)。結(jié)果會(huì)展示為全屏模式,這樣你可以很方便的觀察改變
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)測(cè)當(dāng)前目錄中 scf' 的文件的變化
watch -n 10 'cat /proc/loadavg',10秒一次輸出系統(tǒng)的平均負(fù)載
watch -n 1 -d netstat -ant,每隔一秒高亮顯示網(wǎng)絡(luò)鏈接數(shù)的變化
watch -n 1 -d 'pstree | grep http',每隔一秒高亮顯示http鏈接數(shù)的變化
Linux常用命令三、文件相關(guān)
vi
vi file
按i鍵,進(jìn)入編輯模式
按esc鍵,進(jìn)入命令模式
:w 保存文件但不退出vi
:w file 將修改另外保存到file中,不退出vi
:w! 強(qiáng)制保存,不推出vi
:wq 保存文件并退出vi
:wq! 強(qiáng)制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,強(qiáng)制退出vi
:e! 放棄所有修改,從上次保存文件開始再編輯
chmod
change mode,變更文件或目錄的讀、寫、運(yùn)行權(quán)限
chmod [-cfvR] [--help] [--version] mode file...
mode:權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rw xX ]...][,...]
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個(gè)群體(group)者,o 表示其他以外的人,a 表示這三者皆是
+ 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。
r 表示可讀取,w 表示可寫入,x 表示可執(zhí)行,X 表示只有當(dāng)該檔案是個(gè)子目錄或者該檔案已經(jīng)被設(shè)定過為可執(zhí)行。
chmod也可以用數(shù)字來表示權(quán)限,語法為:chmod abc file,如chmod 777 file
其中a,b,c各為一個(gè)數(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 可以查看列出當(dāng)前用戶的文件權(quán)限
zip
zip -r filename.zip filesdir
zip -r test.zip ./_把當(dāng)前所有文件壓縮到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,處理多個(gè)文件和目錄,空格隔開
unzip
unzip zip-file,解壓到當(dāng)前目錄
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下所有文件和目錄做備份并進(jìn)行壓縮tar xzvf test.tar.gz,把這個(gè)備份文件還原并解壓縮tar tvf test.tar | more,查看備份文件的內(nèi)容,并以分屏方式顯示在 顯示器 上
tar czvf test.tar.gz test --exclude=test/svn,備份壓縮并排除目錄
touch