對中級Linux用戶有用的20個命令

1. 命令: Find
  搜索指定目錄下的文件,從開始於父目錄,然後搜索子目錄。
  注意: -name‘選項是搜索大小寫敏感。可以使用-iname‘選項,這樣在搜索中可以忽略大小寫。(*是通配符,可以搜索所有的文件;‘.sh‘你可以使用文件名或者文件名的一部分來制定輸出結果)
  注意:以上命令查找根目錄下和所有文件夾以及加載的設備的子目錄下的所有包含‘tar.gz’的文件。
  ’find’命令的更詳細信息請參考35 Find Command Examples in Linux
2. 命令: grep
  ‘grep‘命令搜索指定文件中包含給定字符串或者單詞的行。舉例搜索‘/etc/passwd‘文件中的‘tecmint’
  使用’-i’選項將忽略大小寫。
  使用’-r’選項遞歸搜索所有自目錄下包含字符串 “127.0.0.1“.的行。
  注意:您還可以使用以下選項:
  -w 搜索單詞 (egrep -w ‘word1|word2‘ /path/to/file).
  -c 用於統計滿足要求的行 (i.e., total number of times the pattern matched) (grep -c ‘word‘ /path/to/file).
  –color 彩色輸出 (grep –color server /etc/passwd).
3. 命令: man
  ‘man‘是系統幫助頁。Man提供命令所有選項及用法的在線文檔。幾乎所有的命令都有它們的幫助頁,例如:
  上面是man命令的系統幫助頁,類似的有cat和ls的幫助頁。
  注意:系統幫助頁是爲了命令的使用和學習而設計的。
4. 命令: ps
  ps命令給出正在運行的某個進程的狀態,每個進程有特定的id成爲PID。
  使用‘-A‘選項可以列出所有的進程及其PID。
  注意:當你要知道有哪些進程在運行或者需要知道想殺死的進程PID時ps命令很管用。你可以把它與‘grep‘合用來查詢指定的輸出結果,例如:
  ps命令與grep命令用管道線分割可以得到我們想要的結果。
5. 命令: kill
  也 許你從命令的名字已經猜出是做什麼的了,kill是用來殺死已經無關緊要或者沒有響應的進程.它是一個非常有用的命令,而不是非常非常有用.你可能很熟悉 Windows下要殺死進程可能需要頻繁重啓機器因爲一個在運行的進程大部分情況下不能夠殺死,即使殺死了進程也需要重新啓動操作系統才能生效.但在 linux環境下,事情不是這樣的.你可以殺死一個進程並且重啓它而不是重啓整個操作系統.
  殺死一個進程需要知道進程的PID.
  假設你想殺死已經沒有響應的‘apache2‘進程,運行如下命令:
  搜索‘apache2‘進程,找到PID並殺掉它.例如:在本例中‘apache2‘進程的PID是1285..
  注意:每次你重新運行一個進程或者啓動系統,每個進程都會生成一個新的PID.你可以使用ps命令獲得當前運行進程的PID.
  另一個殺死進程的方法是:
  注意:kill需要PID作爲參數,pkill可以選擇應用的方式,比如指定進程的所有者等.
6. 命令: whereis
  whereis的作用是用來定位命令的二進制文件\資源\或者幫助頁.舉例來說,獲得ls和kill命令的二進制文件/資源以及幫助頁:
  注意:當需要知道二進制文件保存位置時有用.
7. 命令: service
  ‘service‘命令控制服務的啓動、停止和重啓,它讓你能夠不重啓整個系統就可以讓配置生效以開啓、停止或者重啓某個服務。
  在Ubuntu上啓動apache2 server:
  重啓apache2 server:
  停止apache2 server:
  注意:要想使用service命令,進程的腳本必須放在‘/etc/init.d‘,並且路徑必須在指定的位置。
  如果要運行“service apache2 start”實際上實在執行“service /etc/init.d/apache2 start”.
8. 命令: alias
  alias是一個系統自建的shell命令,允許你爲名字比較長的或者經常使用的命令指定別名。
  我經常用‘ls -l‘命令,它有五個字符(包括空格)。於是我爲它創建了一個別名‘l’。
  試試它是否能用:
  去掉’l’別名,要使用unalias命令:
  再試試:
  開個玩笑,把一個重要命令的別名指定爲另一個重要命令:
  想想多麼有趣,現在如果你的朋友敲入‘cd’命令,當他看到的是目錄文件列表而不是改變目錄;當他試圖用’su‘命令時,他會進入當前目錄。你可以隨後去掉別名,向他解釋以上情況。
9.命令: df
  報告系統的磁盤使用情況。在跟蹤磁盤使用情況方面對於普通用戶和系統管理員都很有用。 ‘df‘ 通過檢查目錄大小工作,但這一數值僅當文件關閉時纔得到更新。
  ‘df’命令的更多例子請參閱 12 df Command Examples in Linux.
10. 命令: du
  估計文件的空間佔用。 逐層統計文件(例如以遞歸方式)並輸出摘要。
  注意: ‘df‘ 只顯示文件系統的使用統計,但‘du‘統計目錄內容。‘du‘命令的更詳細信息請參閱10 du (Disk Usage) Commands.
11. 命令: rm
  ‘rm’ 標準移除命令。 rm 可以用來刪除文件和目錄。
  直接刪除目錄時會報錯:
  ‘rm’ 不能直接刪除目錄,需要加上相應的’-rf’參數纔可以。
  警告: “rm -rf” 命令是一個破壞性的命令,假如你不小心刪除一個錯誤的目錄。一旦你使用’rm -rf’ 刪除一個目錄,在目錄中所有的文件包括目錄本身會被永久的刪除,所以使用這個命令要非常小心。
12. 命令: echo
  echo  的功能正如其名,就是基於標準輸出打印一段文本。它和shell無關,shell也不讀取通過echo命令打印出的內容。然而在一種交互式腳本中,echo通過終端將信息傳遞給用戶。它是在腳本語言,交互式腳本語言中經常用到的命令。
  創建一小段交互式腳本
  1. 在桌面上新建一個文件,命名爲 ‘interactive_shell.sh‘  (記住必須帶 ‘.sh‘擴展名)。
  2. 複製粘貼如下腳本代碼,確保和下面的一致。
  接下來,設置執行權限並運行腳本。
  注意: ‘#!/bin/bash‘ 告訴shell這是一個腳本,並且在腳本首行寫上這句話是個好習慣。. ‘read‘ 讀取給定的輸出。
13. 命令: passwd
  這是一個很重要的命令,在終端中用來改變自己密碼很有用。顯然的,因爲安全的原因,你需要知道當前的密碼。
14. 命令: lpr
  這個命令用來在命令行上將指定的文件在指定的打印機上打印。
  注意: “lpq“命令讓你查看打印機的狀態(是開啓狀態還是關閉狀態)和等待打印中的工作(文件)的狀態。
15. 命令: cmp
  比較兩個任意類型的文件並將結果輸出至標準輸出。如果兩個文件相同, ‘cmp‘默認返回0;如果不同,將顯示不同的字節數和第一處不同的位置。
  以下面兩個文件爲例:
  file1.txt
  file2.txt
  比較一下這兩個文件,看看命令的輸出。
16. 命令: wget
  Wget是用於非交互式(例如後臺)下載文件的免費工具.支持HTTP, HTTPS, FTP協議和 HTTP 代理。
  使用wget下載ffmpeg
17 命令: mount
  mount 是一個很重要的命令,用來掛載不能自動掛載的文件系統。你需要root權限掛載設備。
  在插入你的文件系統後,首先運行”lsblk“命令,識別出你的設備,然後把分配的設備名記下來。
  從這個輸出上來看,很明顯我插入的是4GB的U盤,因而“sdb1”就是要掛載上來的文件系統。以root用戶操作,然後切換到/dev目錄,它是所有文件系統掛載的地方。
  創建一個任何名字的目錄,但是最好和引用相關。
  現在將“sdb1”文件系統掛載到“usb”目錄.
  現在你就可以從終端進入到/dev/usb或者通過X窗口系統從掛載目錄訪問文件。
  是時候讓程序猿見識見識Linux環境是多麼豐富了!
18. 命令: gcc
  gcc 是Linux環境下C語言的內建編譯器。下面是一個簡單的C程序,在桌面上保存爲Hello.c (記住必須要有‘.c‘擴展名)。
  編譯
  運行
  注意: 編譯C程序時,輸出會自動保存到一個名爲“a.out”的新文件,因此每次編譯C程序 “a.out”都會被修改。 因此編譯期間最好定義輸出文件名.,這樣就不會有覆蓋輸出文件的風險了。
  用這種方法編譯
  這裏‘-o‘將輸出寫到‘Hello‘文件而不是 ‘a.out‘。再運行一次。
19. 命令: g++
  g++是C++的內建編譯器。下面是一個簡單的C++程序,在桌面上保存爲Add.cpp (記住必須要有‘.cpp‘擴展名)。
  編譯並運行
  注意:編譯C++程序時,輸出會自動保存到一個名爲“a.out”的新文件,因此每次編譯C++程序 “a.out”都會被修改。 因此編譯期間最好定義輸出文件名.,這樣就不會有覆蓋輸出文件的風險了。
  用這種方法編譯並運行
20. 命令: java
  Java 是世界上使用最廣泛的編程語言之一. 它也被認爲是高效, 安全和可靠的編程語言. 現在大多數基於網絡的服務都使用Java實現.
  拷貝以下代碼到一個文件就可以創建一個簡單的Java程序. 不妨把文件命名爲tecmint.java (記住: ‘.java’擴展名是必需的).
  用javac編譯tecmint.java並運行
  注意: 幾乎所有的Linux發行版都帶有gcc編譯器, 大多數發行版都內建了g++ 和 java 編譯器, 有些也可能沒有. 你可以用apt 或 yum 安裝需要的包.
 
From: http://tomcat-oracle.iteye.com/blog/2165723
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章