2011年11月6日 星期日

ubuntu(Linux)指令集

ubuntu(Linux)的指令實在多,
像我這樣不常用的人,常是要用時卻想不起來,
只好找一篇連結到這兒,要查找時較方便:
L i n u x 指 令 集
UbuntuSkills

小技巧:
  1. [Ctrl] + [Shift] + [R]指令回溯(輸入使用過指令的關鍵字母,就會幫我們自動完成指令的完整路徑)
  2. 11/16補:如果要使用彩色的 ls, 以不同顔色來區分不同類型的檔案
    1. 在〔家目錄〕的 .bashrc 檔案加入以下幾行:
          if [ "$TERM" != "dumb" ]; then
          eval "`dircolors -b`"
          alias ls='ls --color=auto'
          fi
    2. 再重開啟終端機,執行 ls,顏色就不同了
  3. Ubuntu Terminal(終端機)放大或縮小顯示
    (用 [Ctrl] + [Alt] + [T]啟用) (用 [Alt] + [F4]關閉)

    • [Ctrl] + [Shift] + [+]:  (放大顯示)(不是數字鍵盤上的 + 喔) 
    • [Ctrl] + [-]   (縮小顯示)(不是數字鍵盤上的 - 喔)
  4. man 指令詢系統各個指令的詳細用法
  5. history :列出曾經用過的指令
    1. -c:清空 Bash 指令記錄 
    2. -d 編號:可刪除該「編號」的指令
    3. 數字:列出最近「數字」項指令 
    4. -r:以反方向顯示所下過的指令 
    5. n:顯示前n次所下過的指令
       
  6. clear :清空畫面(畫面東西太多、太雜了,不妨試試這個指令)
  7. more:顯示檔案內容,每次僅顯示一個螢幕之檔案內容
    1.  指令|more
  8. whereis:尋找某個指令的檔案位置 → whereis 指令名稱
  9. whatis:查詢某個指令的用途 → whatis 指令名稱
  10. 輸入的指令要等一下才執行,則可以在指令最前方加上 # 字號,然後先去執行別的指令,等到要用時,用向上鍵找到後,再移除 # 字號即可。(不用刪去重建) 
  11. 使用過的指令
    1. !! 重覆上一指令 
    2. !編號:(前面不用輸入 history) 可執行 history 中該編號的指令
  12. 桌面不見了,或找不到火狐的圖示,又要執行火狐瀏覽網路
    1. 按 〔Ctrl - Alt - T〕來打開終端機,然後輸入 firefox 即可打開火狐了。
    2. 其他已知軟體名稱者也適用
  13. set history=n設定歷史命令記錄
    
    1. set history=50 設定歷史命令記錄最後50個指令


列出較常用的指令:
-、有關檔案、目錄的指令

  1. pwd:列出現在的工作目錄
  2. ls:列出檔案資訊(類似dos之dir)
    1. -l:列出詳細的檔案資訊 
    2. -a:列出全部檔案包括隱藏檔
    3. -R:遞迴列出檔案及子目錄其下的所有子目錄和檔案 
    4. -x:以多欄方式列出,字母順序由左而右  
    5. -i:以i -node來列出,會列出每個檔案在磁碟中的編號 
    6. -m:列出檔案時以逗號 , 來分隔
    7. -n:把群組及檔案擁有者名稱轉成數字代碼
    8. -t:依檔案的修改時間排序 (由新而舊)
    9. -u:依檔案上次的存取時間排序 (需與t配合)
    10. -s:檔案的大小以區塊為單位 (每個區塊block = 512 bytes)
    11. -o:用顏色來顯示各種類別的檔案
    12. -r:以相反的英文字母順序顯示
    13. -d:只顯示目錄訊息而非目錄下的檔案
  3. find:找尋檔案、目錄
    1. find 【起始目錄】 -name 【欲找的檔名】 -print
    2. 從起始目錄開始尋找檔案;使用萬用字元 * 時須在檔名兩端加 "
  4. sudo nautilus:由 終端機 以 系統管理員 開啟資料夾
  5. sudo !!:在終端機=sudo 上一個命令(忘了加入sudo時用
  6. cd 子目錄名稱 → 轉移目錄
    1. cd ~ → 回自家目錄
    2. cd .. 為上一層目錄  
    3. cd - 回到前一個目錄
    4. 分隔符號為,非dos的\
  7. mkdir:建立子目錄(mkdir -參數 目錄名稱)
    1. p:連續建立兩個以上不存在的目錄
    2. m:設定這個目錄的存取權限
  8. cp:複製檔案 (cp -參數 來源檔 (或目錄) 目的檔 (或目錄))
    1. a:拷貝目錄,保留所有的資訊,包括連結的檔
    2. d:保留連結的檔案
    3. s:製造符號連結
    4. f:拷貝時若相同檔名的檔案直接覆蓋不提出警告
    5. i:拷貝時若相同檔名的檔案不直接複蓋而會提出警告 
    6. l:不拷貝,但是連結檔案
    7. p:保留檔案的修改時間及存取權限 
    8. r:拷貝時包含目錄及目錄下的檔案
  9. mv:更改、移動目錄或檔案(mv -參數 來源檔 (或目錄) 目的檔 (或目錄))
    1. b:移動之前先做備份
    2. v:做完移動之後顯示所做的移動情形
    3. f:強迫性移動,不會詢問使用者是否確認 
  10. rm刪除檔案
    1. rm 檔名 刪除「檔名 
    2. rm -r 資料夾名 刪除「資料夾名
     二、有關系統-硬碟、記憶體、關機、裝置、更新、檢查
    1. sudo passwd root:想用root登入(看這篇說明,有點危險,不小心會損壞系統
    2. lsb_release -is:顯示本機 Linux 發行版的代號
    3. lsb_release -rs:顯示 Linux 發行版的版本
    4. lsb_release -cs:顯示 Linux 的產品代號
    5. uname -m:顯示電腦硬體名稱 
    6. sudo fdisk -l: 列出硬碟分割區
    7. sudo apt-get upgrade:將所有安裝的套件更新到取新版本  
    8. df:查詢硬碟使用量
      (在[系統監控] / [檔案系統]可看到已載入的分割區的使用情形)
      1. a:顯示全部的檔案系統和各分割區的磁碟使用情形
      2. h:硬碟空間使用情況
      3. i:顯示i -nodes的使用量
      4. k:大小用k來表示 (預設值)
      5. t:顯示某一個檔案系統的所有分割區磁碟使用量
      6. x:顯示不是某一個檔案系統的所有分割區磁碟使用量
      7. T:顯示每個分割區所屬的檔案系統名稱
    9. du:查詢檔案或目錄的磁碟使用空間 
      (在[磁碟用量分析器] / [掃瞄個人資料夾]或[掃瞄檔案系統]或 [掃瞄資料夾]也可看到)
      1. a:顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間
      2. b:大小用bytes來表示 (預設值為k bytes)  
      3. c:最後再加上總計 (預設值) 
      4. l:計算所有檔案大小
      5. s:只顯示各檔案大小的總合
      6. x:只計算同屬同一個檔案系統的檔案  
      7. L:計算所有的檔案大小
    10. free:顯示記憶體使用量。
      1. m:以Mb作單位
      2. t:顯示記憶體總合
    11. top列出目前系統中正在執行的工作,以及各工作記憶體空間與 CPU 使用百分比
    12. sudo halt:關機
    13. sudo shutdown:關機(shutdown -參數 時間 訊息)
      1. r:關機後重新開機 
      2. f:快速關機 
      3. h:快速關機,不要經過init的程序
      4. c:取消關時的程序  
      5. 時間可用now或任意數字 (代表分鐘)
      6. 關機時間:
        1. sudo shutdown -h now
        2. sudo shutdown -h 23:30  (23:30關機)
        3. sudo shutdown -h +60 (60分鐘後關機)
    14. reboot:快速重開機 (類似按 Alt + Ctrl + Del 鍵 )
      • 等於 sudo shutdown -r now
    15. sudo pkill Xorg:登出
    16. fsck:檢查、修復linux檔案系統(fsck -參數 分割區名稱)
      1. a:自動修復
      2. r:執行時會詢問
      3. V:顯示處理時的每一個步驟
      4. t:指定一個檔案系統
      5. n:不要真正執行,只看執行時會做那些動做
    17. xinput list:列出目前系統上的所有input裝置,像是滑鼠,鍵盤...等
     三、其他:權限、網路
    1. date:顯示日期、時間
    2. cal 月 年:顯示月曆 
      1. -j:顯示查詢的那一天為每年的第幾天 
      2. -y:顯示整年的月曆 
    3. sudo rkhunter --checkall:消滅木馬程式
      1. 到 synaptic 套件管理程式 →搜尋安裝 rkhunter
      2. 開啟 終端機(Ctrl-Alt-T) →輸入(或貼上) sudo rkhunter --checkall
    4. netstat:查詢網路目前狀況 
      1. -a:全部列出 
      2. -c:每隔幾秒鐘重新列一遍  
      3. -i:界面狀態
      4. -n:以網路IP位址代替名稱列出網路連接情形  
      5. -o:列出時間狀態
      6. -r:列出網路的路徑表  
      7. -t:列出tcp協定的連接情形 
      8. -u:列出udp協定的連接情形  
      9. -v:列出版本 
      10. -w:列出raw程序連結的資訊  
      11. -x:列出有關unix網域socket的資訊
    5. sudo pppoeconf  :設定ADSL連線
    6. sudo ethtool eth0:顯示網路卡的狀態
      (先到 synaptic套件管理程式安裝 ethtool )
    7. ifconfig設定、檢視網路介面
      1. ifup eth0 啟動「eth0」網路介面
      2. ifdown eth0 停止「eth0」網路介面運作
    8. su :將一個普通使用者提升為超級使用者
    9. md5sum xxx.iso:檢查 xxx.iso 檔的 md5 碼(用來檢查下載的檔案是否有錯)
    10. passwd設定密碼
      1.   passwd -d 使用者名稱 刪除「使用者名稱」之密碼 
      2. passwd -l 使用者名稱 鎖住「使用者名稱」之帳號,使之失效

    18 則留言:

    1. 感謝分享,目前剛好在Ubuntu,很有用!

      回覆刪除
    2. 感謝你,我學習到許多 ^^

      回覆刪除
    3. 感謝你,我學習到許多 ^^

      回覆刪除
      回覆
      1. Yu-Ting:
        不客氣!歡迎再光臨!

        刪除
    4. 請問版大:
      我要複製home目錄底下的資料夾到SD卡中的rootfs磁區中,為什麼按照指令打~他卻說沒有此一檔案或目錄??我的打法是:
      cp -r home/pandaboard-es/file media/rootfs

      似乎是找不到home/pandaboard-es/file這個目錄~但此目錄確實存在??

      回覆刪除
      回覆
      1. 陳同學:
        問題可能是你現在的目錄路徑不對
        最好、最簡單的方法是:直接用檔案管理打開資料夾→複製;再打開SD卡,貼上(這樣不用考慮路徑的問題)
        用命令列操作時,要注意路徑的問題喔!(容易弄錯上下間的目錄關係)

        刪除
    5. 雖然用了ubuntu好一陣子 , 但是一直沒有實際玩過每個
      這篇受用 ~感謝 ~~

      回覆刪除
    6. 回覆
      1. 有幫到您真高興!歡迎有空常來逛逛!

        刪除
    7. hi 大大請教如何檢查ubuntu網頁有沒有正常的指令呢?謝謝

      回覆刪除