程序猿 和 命令行 更配

讓小編來給大家介紹第一位新朋友:命令行!
使用了很久Linux的小編也是非常的喜歡它呢!

什么是命令行?

首先小編是默認你已經(jīng)知道teminal 這個東西了的, 它就是所有的黑客都使用的黑色窗口。它可能剛開始看上去有點嚇人,但事實上它只是等待你的命令提示符。

這個窗口通常被稱為 命令行命令行界面,是一個基于文本的用來查看、 處理、 和操作您的計算機上的文件的應(yīng)用程序。 就像 Windows 資源管理器或 Mac 上的 Finder,但沒有圖形界面。 命令行的其他名字是: cmdCLI提示符控制臺終端.

Linux命令

一般說的“命令行”是指linux命令,linux命令是對Linux系統(tǒng)進行管理的命令。對于Linux系統(tǒng)來說,無論是中央處理器、內(nèi)存、磁盤驅(qū)動器、鍵盤、鼠標,還是用戶等都是文件,Linux系統(tǒng)管理命令是它正常運行的核心,與之前的DOS命令類似。linux命令在系統(tǒng)中有兩種類型:內(nèi)置Shell(外殼)命令和Linux命令。

每個命令將前綴由這個符號和一個空格組成,但您不必鍵入它。您的計算機將為您完成這個:

你的第一個命令 (耶 !)
讓我們從簡單的東西開始。鍵入以下命令:
$ whoami
然后鍵入 enter
。這是我們的結(jié)果:

$whoami
qmm

正如你所看到的計算機剛剛打印了你的用戶名。棒吧,呵呵?:)

咦! 這么簡單, 沒錯就是這么簡單, 嗯....那當然不是僅僅如此 !

小編在Linux上面混這么久了, 剛剛來整理一下常用命令行,同時也再次全面的學習一下命令行的藝術(shù),帶你體驗它的神奇.

小編只想帶你飛

關(guān)機

$ sudo poweroff 關(guān)機
$ shutdown -h now 關(guān)閉系統(tǒng)(1)
$ init 0關(guān)閉系統(tǒng)(2)   
$ telinit 0 關(guān)閉系統(tǒng)(3)
$ shutdown -h hours:minutes & 按預(yù)定時間關(guān)閉系統(tǒng)   
$ shutdown -c 取消按預(yù)定時間關(guān)閉系統(tǒng)   
$ shutdown -r now 重啟(1)   
$ reboot重啟(2)   
$ logout 注銷

文件目錄

$ cd /home 進入 '/ home' 目錄'  
$ cd Desktop 進入桌面 
$ cd .. 返回上一級目錄   
**$ cd ../.. 返回上兩級目錄 **  
$ cd 進入個人的主目錄   
$ cd ~user1 進入個人的主目錄   
**$ cd - 返回上次所在的目錄 **  
$ pwd 顯示工作路徑

$ ls 查看目錄中的文件  
$ ls 目錄名 -f : 查看該目錄中的文件   
$ ls -l 顯示文件和目錄的詳細資料   
$ ls -a 顯示隱藏文件   
**$ ls *[0-9]* 顯示包含數(shù)字的文件名和目錄名 **

$ mkdir dir1 創(chuàng)建一個叫做 'dir1' 的目錄'   
$ mkdir dir1 dir2 同時創(chuàng)建兩個目錄   
$ mkdir -p /tmp/dir1/dir2 創(chuàng)建一個目錄樹

$ rm -f file1 刪除一個叫做 'file1' 的文件, 加上-f參數(shù)表示一次性刪除, 不在確認(使用 rm后便不能挽回,意思就是已刪除的文件會一去不復(fù)返了! 因此,要十分小心地使用此命令。)
$ rmdir dir1 刪除一個叫做 'dir1' 的目錄'   
$ rm -rf dir1 刪除一個叫做 'dir1' 的目錄并同時刪除其內(nèi)容, -r參數(shù)拜師遞歸地刪除目錄里面的內(nèi)容 ,-rf 表示遞歸刪除目錄及其內(nèi)容, 不再確認.  
$ rm -rf dir1 dir2 同時刪除兩個目錄及它們的內(nèi)容

$ mv dir1 new_dir(或者new dir name)重命名/移動 一個目錄

$ cp file1 file2 復(fù)制一個文件,file1 和 file2 的文件名必須不一樣  
$ cp -r dir/* . 復(fù)制一個目錄下的所有文件到當前工作目錄(-r參數(shù)是遞歸復(fù)制目錄下的內(nèi)容)   
$ cp -a /tmp/dir1 . 復(fù)制一個目錄到當前工作目錄   
** $ cp -a dir1 dir2 復(fù)制一個目錄 **`

查看文件的內(nèi)容

cat 查看文件內(nèi)容如果文件太大,需要一頁一頁翻看可以用:
$ cat 文件名 | less : 按j下翻,按k上翻,按q退出。

$ echo 將內(nèi)容添加到文件中。
clear清屏

$ ln -s file1 lnk1 創(chuàng)建一個指向文件或目錄的軟鏈接   
$ ln file1 lnk1創(chuàng)建一個指向文件或目錄的物理鏈接   
$ touch -t 0712250000 file1 修改一個文件或目錄的時間戳 - (YYMMDDhhmm)

安裝tree命令: sudo apt-get install tree
$ tree 顯示文件和目錄由根目錄開始的樹形結(jié)構(gòu)(1)   
$ lstree 顯示文件和目錄由根目錄開始的樹形結(jié)構(gòu)(2)

文件搜索

$ find / -name file1 從 '/' 開始進入 系統(tǒng)根文件 搜索文件和目錄
$ find . -name file1 從 '/' 開始只從當前目錄搜索文件和目錄   
$ find / -user user1 搜索屬于用戶 'user1' 的文件和目錄

查看進程使用情況:

**ps命令 **
命令功能:用來顯示當前進程的狀態(tài)
命令參數(shù)(幾個常用的參數(shù):):

a 或者 -A  #顯示所有進程
-e 等于“-A”
c  顯示進程的真實名稱
-ef  #顯示所有進程信息,連同命令行

ps 與grep 常用組合用法,查找特定進程
$ ps -ef|grep ssh 查看ssh進程信息
$ lsof -i :22 知道22端口現(xiàn)在運行什么程序
有時候我們可能會出現(xiàn)端口號別占用的情況,這時候我們就需要使用lsof -i: 端口號來查看該端口號被哪個程序在運行,獲取占用端口號的進程名。
然后使用ps命令來查看該程序的ID號: ps -ef|grep 進程名
再使kill 命令來殺死該進程: sudo kill -9 進程ID號 (參數(shù)-9: 強制終止,徹底殺死進程,更多參數(shù)請參考

下載文件的工具 wget

Linux系統(tǒng)中的wget是一個下載文件的工具
命令格式:wget [參數(shù)] [URL地址]
命令功能:用于從網(wǎng)絡(luò)上下載資源,沒有指定目錄,下載資源回默認為當前目錄

實例1:使用wget下載單個文件
$ wget http://www.minjieren.com/wordpress-3.1-zh_CN.zip
# 從網(wǎng)絡(luò)下載一個文件并保存在當前目錄,在下載的過程中會顯示進度條
#包含(下載完成百分比,已經(jīng)下載的字節(jié),當前下載速度,剩余下載時間)。

實例2:使用wget -O下載并以不同的文件名保存
命令:$  wget -O wordpress.zip http://www.minjieren.com/download.aspx?id=1080

實例3::使用wget -c斷點續(xù)傳
命令:$ wget -c http://www.minjieren.com/wordpress-3.1-zh_CN.zip
# 使用wget -c重新啟動下載中斷的文件
對于我們下載大文件時突然由于網(wǎng)絡(luò)等原因中斷非常有幫助
我們可以繼續(xù)接著下載而不是重新下載一個文件

實例4:使用wget -b后臺下載
命令:$ wget -b http://www.minjieren.com/wordpress-3.1-zh_CN.zip
對于下載非常大的文件的時候,我們可以使用參數(shù)-b進行后臺下載。
wget -b http://www.minjieren.com/wordpress-3.1-zh_CN.zip
你可以使用以下命令來察看下載進度:
tail -f wget-log

下載工具curl

curl命令是一個利用URL規(guī)則在命令行下工作的文件傳輸工具。它支持文件的上傳和下載來自: http://man.linuxde.net/curl
常用舉例:

1. 通過-o/-O選項保存下載的文件(抓取頁面的內(nèi)容)到指定的文件中:
-o:將文件保存為命令行中指定的文件名的文件中
-O:使用URL中默認的文件名保存文件到本地
# 將文件下載到本地并命名為mygettext.html
  curl -o mygettext.html http://www.gnu.org/software/gettext/manual/gettext.html

2. 將文件保存到本地并命名為gettext.html
  curl -O http://www.gnu.org/software/gettext/manual/gettext.html

下載單個文件,默認將輸出打印到標準輸出中(STDOUT)中:
curl http://www.centos.org 

3. 同時獲取多個文件:
curl -O URL1 -O URL2

4.通過使用-C選項可對大文件使用斷點續(xù)傳功能,如:
# 當文件在下載完成之前結(jié)束該進程
$ curl -O http://www.gnu.org/software/gettext/manual/gettext.html
##############             20.1%
# 通過添加-C選項繼續(xù)對該文件進行下載,已經(jīng)下載過的文件不會被重新下載
curl -C - -O http://www.gnu.org/software/gettext/manual/gettext.html

至于它的上傳文件的功能, 小編暫時還不學, 因為還用不到,學了等于不用等于白學哈!

其它

1.1 $ arch # 顯示機器的處理器架構(gòu)


1.2 $ uname -m 顯示機器的處理器架構(gòu)

2.$ uname -r 顯示正在使用的內(nèi)核版本

3.date 顯示系統(tǒng)日期

4.$ cal 2007 顯示2007年的日歷表

安全的關(guān)閉命令行。讓我們以黑客的方式,好嗎?
$ exit

解壓 & 壓縮 文件

解壓 文件:

  • 解壓rar 型文件:
sudo  apt-get install rar   安裝rar 命令

 unrar  e file.rar   解壓文件 (其實后面要不要擴展名都可以)
或者 rar x file.rar   

  這兩個解壓rar文件的命令有什么區(qū)別呢?
使用 unrar e file.rar  解壓會把原rar壓縮包中的全部文件解壓到當前目錄下,沒有目錄;
而 rar x  file.rar  解壓出來后會保持原來壓縮包的目錄結(jié)構(gòu)。 
  • 解壓tar 壓縮包
sudo sot-get install tar 安裝tar命令
tar -xf all.tar   這條命令是解出all.tar包中所有文件,-x是解開的意思 
tar -xzf all.tar.gz  解壓對于.tgz或.tar.gz結(jié)尾的文件 
  • **解壓.zip文件 **
     linux下提供了zip和unzip程序,zip是壓縮程序,unzip是解壓程序。它們的參 數(shù)選項很多
 sudo apt-get install unzip   #安裝unzip 命令
 unzip all.zip   # 這條命令是將all.zip中的所有文件解壓出來 

壓縮文件:

  • 壓縮為rar 壓縮包:
rar  a   file2(壓縮后的文件名)  file1 (要壓縮的文件)
例如:
rar a abc  ab.txt   #把當前目錄下的 ab.txt文件壓縮成abc.rar 
rar a abc *    # 把當前目錄下的所有文件和目錄壓縮成abc.rar
= 最好是返回上一層目錄,然后直接用 rar a abc folderName 將 folderName 整個打包壓縮成abc.rar 。
  • 壓縮為 tar壓縮包
tar -cf all.tar *.jpg   #這條命令是將所有.jpg的文件打成一個名為all.tar的包。
                         -c是表示產(chǎn)生新的包 ,-f指定包的文件名。
tar -rf all.tar *.gif  #這條命令是將所有.gif的文件增加到all.tar的包里面去。
                         -r是表示增加文件的 意思。 
# tar -uf all.tar logo.gif   #這條命令是更新原來tar包all.tar中l(wèi)ogo.gif文件
                         -u是表示更新文件的意思。 
# tar -tf all.tar   #這條命令是列出all.tar包中所有文件
                       -t是列出文件的意思 
  • 壓縮為zip壓縮包
 zip all.zip *.jpg   這條命令是將所有.jpg的文件壓縮成一個zip包 

關(guān)于各命令的更多用法,可以使用-help 來查看 ,如 rar --helpunrar --help 或者是 man rar查看幫助來了解。

再來一波使用過的裝逼的命令:

$ du -sh *:查看當前目錄下的所有文件所占用的內(nèi)存

如果你好奇,ss64.com 包含用于所有操作系統(tǒng)命令的完整引用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容