在Linux環(huán)境下敲各種命令是再正常不過了,尤其是現(xiàn)在大多少服務(wù)器均為Linux系統(tǒng),但是我又記不住這么多命令,只是偶爾在項目做完發(fā)布到服務(wù)器上的時候會涉及到,所以在網(wǎng)上找了一些命令,在此記錄一下~
(內(nèi)容是轉(zhuǎn)載過來的,原創(chuàng)在http://www.oschina.net/translate/useful-linux-commands-for-newbies)
ls命令是列出目錄內(nèi)容(List Directory Contents)的意思。運(yùn)行它就是列出文件夾里的內(nèi)容,可能是文件也可能是文件夾。
[plain]?view plain?copy
root@tecmint:~#?ls??
“l(fā)s -l”命令以詳情模式(long listing fashion)列出文件夾的內(nèi)容。?
[plain]?view plain?copy
root@tecmint:~#?ls?-l??
total?0??
drwxr-xr-x@??9?harvey??staff??306?10?19?13:16?meteortutorial??
drwxr-xr-x??10?harvey??staff??340?10?19?13:19?simple-todos??
"ls -a"命令會列出文件夾里的所有內(nèi)容,包括以"."開頭的隱藏文件。
[plain]?view plain?copy
root@tecmint:~#?ls?-a??
.???????..??????.DS_Store???meteortutorial??simple-todos??
注意:在Linux中,文件以“.”開頭的就是隱藏文件,并且每個文件、文件夾、設(shè)備或者命令都是以文件對待。ls -l?命令輸出:
d?(代表了是目錄).?
rwxr-xr-x是文件或者目錄對所屬用戶,同一組用戶和其它用戶的權(quán)限。?
上面例子中第一個harvey代表了文件屬于用戶harvey
上面例子中的第二個staff代表了文件文件屬于用戶組staff
306代表了文件大小為306字節(jié).
10 19 13:16 表示文件或者文件夾最后一次修改的日期和時間。
最后一項是文件或文件夾的名稱。
更多"ls"例子請查看?15 linux中l(wèi)s命令實例
"lsblk"就是列出塊設(shè)備。除了RAM外,以標(biāo)準(zhǔn)的樹狀輸出格式,整齊地顯示塊設(shè)備。
[plain]?view plain?copy
root@tecmint:~#?lsblk??
“lsblk -l”命令以列表格式顯示塊設(shè)備(而不是樹狀格式)。
[plain]?view plain?copy
root@tecmint:~#?lsblk?-l??
注意:lsblk是最有用和最簡單的方式來了解新插入的USB設(shè)備的名字,特別是當(dāng)你在終端上處理磁盤/塊設(shè)備時。
“md5sum”就是計算和檢驗MD5信息簽名。md5 checksum(通常叫做哈希)使用匹配或者驗證文件的文件的完整性,因為文件可能因為傳輸錯誤,磁盤錯誤或者無惡意的干擾等原因而發(fā)生改變。
[plain]?view plain?copy
root@tecmint:~#?md5sum?teamviewer_linux.deb??
47790ed345a7b7970fc1f2ac50c97002??teamviewer_linux.deb??
注意:用戶可以使用官方提供的和md5sum生成簽名信息匹對以此檢測文件是否改變。Md5sum沒有sha1sum安全,這點(diǎn)我們稍后討論。
“dd”命令代表了轉(zhuǎn)換和復(fù)制文件。可以用來轉(zhuǎn)換和復(fù)制文件,大多數(shù)時間是用來復(fù)制iso文件(或任何其它文件)到一個usb設(shè)備(或任何其它地方)中去,所以可以用來制作USB啟動器。
[plain]?view plain?copy
root@tecmint:~#?dd?if=/home/user/Downloads/debian.iso?of=/dev/sdb1?bs=512M;?sync??
注意:在上面的例子中,usb設(shè)備就是sdb1(你應(yīng)該使用lsblk命令驗證它,否則你會重寫你的磁盤或者系統(tǒng)),請慎重使用磁盤的名,切忌。
dd?命令在執(zhí)行中會根據(jù)文件的大小和類型 以及 usb設(shè)備的讀寫速度,消耗幾秒到幾分鐘不等。
"uname"命令就是Unix Name的簡寫。顯示機(jī)器名,操作系統(tǒng)和內(nèi)核的詳細(xì)信息。
[plain]?view plain?copy
root@tecmint:~#?uname?-a??
Linux?tecmint?3.8.0-19-generic?#30-Ubuntu?SMP?Wed?May?1?16:36:13?UTC?2013?i686?i686?i686?GNU/Linux??
注意:?uname顯示內(nèi)核類別,uname -a顯示詳細(xì)信息。上面的輸出詳細(xì)說明了uname -a
“Linux“: 機(jī)器的內(nèi)核名?
“tecmint“: 機(jī)器的節(jié)點(diǎn)名?
“3.8.0-19-generic“: 內(nèi)核發(fā)布版本?
“#30-Ubuntu SMP“: 內(nèi)核版本?
“i686“: 處理器架構(gòu)?
“GNU/Linux“: 操作系統(tǒng)名?
“history”命令就是歷史記錄。它顯示了在終端中所執(zhí)行過的所有命令的歷史。
[plain]?view plain?copy
root@tecmint:~#?history??
注意:按住“CTRL + R”就可以搜索已經(jīng)執(zhí)行過的命令,它可以在你寫命令時自動補(bǔ)全。
[plain]?view plain?copy
(reverse-i-search)`if':ifconfig??
“sudo”(super user do)命令允許授權(quán)用戶執(zhí)行超級用戶或者其它用戶的命令。通過在sudoers列表的安全策略來指定。
[plain]?view plain?copy
root@tecmint:~#?sudo?add-apt-repository?ppa:tualatrix/ppa??
注意:sudo?允許用戶借用超級用戶的權(quán)限,然而"su"命令實際上是允許用戶以超級用戶登錄。所以sudo比su更安全。
并不建議使用sudo或者su來處理日常用途,因為它可能導(dǎo)致嚴(yán)重的錯誤如果你意外的做錯了事,這就是為什么在linux社區(qū)流行一句話:
“To err is human, but to really foul up everything, you need root password.”
“人非圣賢孰能無過,但是擁有root密碼就真的萬劫不復(fù)了。”?# 譯
8. mkdir命令?
“mkdir”(Make directory)命令在命名路徑下創(chuàng)建新的目錄。然而如果目錄已經(jīng)存在了,那么它就會返回一個錯誤信息"不能創(chuàng)建文件夾,文件夾已經(jīng)存在了"("cannot create folder, folder already exists")
[plain]?view plain?copy
root@tecmint:~#?mkdir?tecmint??
注意:目錄只能在用戶擁有寫權(quán)限的目錄下才能創(chuàng)建。mkdir:不能創(chuàng)建目錄`tecmint`,因為文件已經(jīng)存在了。(上面的輸出中不要被文件迷惑了,你應(yīng)該記住我開頭所說的-在linux中,文件,文件夾,驅(qū)動,命令,腳本都視為文件)
“touch”命令代表了將文件的訪問和修改時間更新為當(dāng)前時間。touch命令只會在文件不存在的時候才會創(chuàng)建它。如果文件已經(jīng)存在了,它會更新時間戳,但是并不會改變文件的內(nèi)容。
[plain]?view plain?copy
root@tecmint:~#?touch?tecmintfile??
注意:touch?可以用來在用戶擁有寫權(quán)限的目錄下創(chuàng)建不存在的文件。
“chmod”命令就是改變文件的模式位。chmod會根據(jù)要求的模式來改變每個所給的文件,文件夾,腳本等等的文件模式(權(quán)限)。
在文件(文件夾或者其它,為了簡單起見,我們就使用文件)中存在3中類型的權(quán)限?
[plain]?view plain?copy
Read?(r)=4??
Write(w)=2??
Execute(x)=1??
所以如果你想給文件只讀權(quán)限,就設(shè)置為'4';只寫權(quán)限,設(shè)置權(quán)限為'2';只執(zhí)行權(quán)限,設(shè)置為1; 讀寫權(quán)限,就是4+2 = 6, 以此類推。?
現(xiàn)在需要設(shè)置3種用戶和用戶組權(quán)限。第一個是擁有者,然后是用戶所在的組,最后是其它用戶。?
[plain]?view plain?copy
rwxr-x--x???abc.sh??
這里root的權(quán)限是?rwx(讀寫和執(zhí)行權(quán)限),
所屬用戶組權(quán)限是?r-x (只有讀和執(zhí)行權(quán)限, 沒有寫權(quán)限),
對于其它用戶權(quán)限是 -x(只有只執(zhí)行權(quán)限)?
為了改變它的權(quán)限,為擁有者,用戶所在組和其它用戶提供讀,寫,執(zhí)行權(quán)限。?
[plain]?view plain?copy
root@tecmint:~#?chmod?777?abc.sh??
三種都只有讀寫權(quán)限?
[plain]?view plain?copy
root@tecmint:~#?chmod?666?abc.sh??
擁有者用戶有讀寫和執(zhí)行權(quán)限,用戶所在的組和其它用戶只有可執(zhí)行權(quán)限?
[plain]?view plain?copy
root@tecmint:~#?chmod?711?abc.sh??
注意:對于系統(tǒng)管理員和用戶來說,這個命令是最有用的命令之一了。在多用戶環(huán)境或者服務(wù)器上,對于某個用戶,如果設(shè)置了文件不可訪問,那么這個命令就可以解決,如果設(shè)置了錯誤的權(quán)限,那么也就提供了為授權(quán)的訪問。