Q:最近Linux好像挺火的,那么Linux是什么鬼?
A:
Linux是一種操作系統(tǒng),其功能和Windows、Mac差不多。不過Linux以前沒有圖形界面,所有操作在一個終端/命令行/純文本界面完成,有點像類似N年前的DOS系統(tǒng)。所以Linux沒有Windows廣為人知,但在服務(wù)器領(lǐng)域Linux占據(jù)大半的江山,也就是說大部分服務(wù)器電腦用的操作系統(tǒng)都是Linux而不是Windows什么的。最近Linux也有了帶圖形界面的發(fā)行版本,比如Ubuntu,加上Linux其他優(yōu)勢(小巧、穩(wěn)定、高效開發(fā)等)所以也就開始多人用起來了。
要知道Linux比其它操作系統(tǒng)更加凸顯內(nèi)核與外殼(kernel與shell)的概念。kernel是只一個操作系統(tǒng)的核心部分,負責(zé)管理系統(tǒng)自言、調(diào)度任務(wù)、管理文件等功能。外殼則是用戶與內(nèi)核交流的界面,相當(dāng)于一個翻譯器,把用戶的操作翻譯給內(nèi)核。因為Linux是一款開源軟件,即所有人都可以獲取其源代碼,并做自己的修改,所以有各種版本的kernel,有更多版本的shell。一般來說kernel不會輕易變動,但是shell則有很多種,不同的shell與kernel搭配起來組成了各種Linux的發(fā)行版本,如我們熟悉的Redhat、Ubuntu、SUSE等。
Q:什么?Linux的所有操作可以在一個純文本界面完成?那我怎么進入某個目錄、查看文件、怎么創(chuàng)建刪除、怎么復(fù)制粘貼?
A:
Redhat、CentOS等發(fā)行版本是純字符界面的,Ubuntu則是帶圖形界面的。在Ubuntu的各種操作和在Windows、Mac類似,但也可以調(diào)出字符界面終端,展現(xiàn)我們的逼格。最快捷的方式是快捷鍵組合:
【Ctrl】+【Alt】+【T】
如此我們打開了我們所說的命令行/終端/字符界面。我們可以拋棄鼠標(biāo),在命令行完成所有操作。
在了解一些具體的命令,比如進入目錄、查看文件、創(chuàng)建刪除前,最好先了解命令行的命令格式——
命令 【選項】 【參數(shù)】
這就是一條命令的的基本格式,即命令名+空格+選項+空格+參數(shù)。比如一下的命令——
cd /root/home/user #進入/home/user這個路徑(文件夾)
cd .. #返回上一級目錄,如果黨建是/home/user,那就進入/home
cd ~ #進入家目錄,即/home/user這一個目錄
ls #顯示當(dāng)前目錄下有哪些文件和目錄
ls -l #顯示當(dāng)前目錄下所有文件和目錄以及它們的權(quán)限、大小等信息
ls -lh directory1 #顯示當(dāng)前目錄下diretory1這個目錄里的目錄、文件以及詳細信息
這些都是常用的命令。第1到3條命令中的cd命令就是change directory的意思,也就是改變當(dāng)前目錄。【..】和【~】是特殊參數(shù),前者代表上一級目錄,后者代表家目錄,也就是/home/user。第4到6條命令中的ls命令是list directory的意思,即列出目錄的內(nèi)容。【-l】和【-lh】都是選項,不同的選項會顯示命令不同的功能。
要進入某個目錄,用【cd】命令,要查看文件,用【ls】命令。
如果是創(chuàng)建目錄,則使用【mkdir】make directory。刪除目錄,則是【rmdir】remove empty directory(只能刪除空目錄)。常用語法如下——
mkdir directory1 #在當(dāng)前目錄下創(chuàng)建一個叫directory1的目錄
rmdir directory1 #刪除當(dāng)前目錄下一個叫directory1的空目錄
Linux有各種類型的文件,不同類型文件有不同的命令來創(chuàng)建,但刪除各種文件,都可以用一個命令【rm】remove搞定——
rm filename #刪除一個名為filename的文件
rm -r directory1 #刪除一個名為directory1的目錄,無論是否為空目錄
在命令行中,復(fù)制和粘貼是同時完成的,用到的命令是【cp】copy——
cp /home/old/file /home/new #把/home/old目錄下的文件file復(fù)制到/home/new目錄
cp -r /home/old/directory /home/new #把/home/old下的目錄directory復(fù)制到/home/new目錄
與復(fù)制粘貼相關(guān)的還要剪切粘貼,也是一句搞定的命令【mv】move——
mv /home/old/file /home/new #把/home/old目錄下的文件file移動到/home/new目錄
mv /home/old/directory /home/new #把/home/old下的目錄directory移動到/home/new目錄
要注意的事,【mv】也是一個重命名的命令——
mv oldname newname #把名為oldname的文件/目錄改名為newname
總結(jié)來說,進入目錄用到【cd】,查看文件用【ls】,創(chuàng)建刪除目錄用【mkdir】和【rmdir】(只能刪除空目錄),刪除文件用【rm】(加選項-r能刪目錄),復(fù)制粘貼用【cp】,剪切粘貼用【mv】,而【mv】也能用來重命名。各種命令加上其配套的選項可以實現(xiàn)更多功能。
Q:這么多命令,每一條命令還配套這么多選項,怎么記啊?
A:
Linux能識別的命令大概有3000+條,估計沒幾個人能完全記得下。常用的命令也有200+條,這個多用多練的話,還是能記住的。我們要做的是記住常用的命令和配套的選項。一些生僻的,或者說偶然間大腦短路忘了某個命令,可以上網(wǎng)查找嘛。
什么?沒網(wǎng)?那可以在命令行使用Linux自帶的幫助工具【man】manual命令——
man command_name #顯示名為command_name的命令的用法
【man】這個命令可以查到絕大多數(shù)命令的用法,而那少數(shù)找不到的命令是shell專屬的,要用【help】命令來查看,語法和【man】一樣。不過都是幫助文檔是英文寫的。。。好好練一下英語吧。
2016-10-1
2016-10-2