2013年2月5日 星期二

[Linux]Linux(Ubuntu)基本指令

Linux(Ubuntu)基本指令  
bash shell (鳥哥bash shell教學)
共同版本基本指令(初階指令應用)(, man, unix2dos / dos2unix , cat(將檔案內容直接輸出在螢幕上) ,  ,  apt-get , apt-catch , aptitude , dmesg 

小技巧:
  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] + [-]   (縮小顯示)(不是數字鍵盤上的 - 喔)

檔案應用

 cp - 複製檔案 (cp -參數 來源檔 (或目錄) 目的檔 (或目錄))

  1. a:拷貝目錄,保留所有的資訊,包括連結的檔
  2. d:保留連結的檔案
  3. s:製造符號連結
  4. f:拷貝時若相同檔名的檔案直接覆蓋不提出警告
  5. i:拷貝時若相同檔名的檔案不直接複蓋而會提出警告 
  6. l:不拷貝,但是連結檔案
  7. p:保留檔案的修改時間及存取權限 
  8. r:拷貝時包含目錄及目錄下的檔案

cd - 子目錄名稱 → 轉移目錄

  1. cd ~ → 回自家目錄
  2. cd .. 為上一層目錄  
  3. cd - 回到前一個目錄
  4. 分隔符號為,非dos的\

-------------------------------------------------------------
tar壓縮/解壓指令

tar(常用)
打包:tar -cvf FileName.tar DirName
解包: tar -xvf FileName.tar

.tar.gz(常用)
壓縮:tar -zcvf FileName.tar.gz DirName
解壓:tar -zxvf FileName.tar.gz

.tar.bz2(常用)
壓縮:tar -jcvf FileName.tar.bz2 DirName
解壓:tar -jxvf FileName.tar.bz2

.gz
壓縮:gzip FileName
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz

.bz2
壓縮: bzip2 -z FileName
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2

.bz
壓縮:unkown
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz

.tar.bz
壓縮:unkown
解壓:tar jxvf FileName.tar.bz

.Z
壓縮:compress FileName
解壓:uncompress FileName.Z

.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
解壓:tar Zxvf FileName.tar.Z

.tgz
壓縮:unkown
解壓:tar zxvf FileName.tgz

.tar.tgz
壓縮:tar zcvf FileName.tar.tgz FileName
解壓:tar zxvf FileName.tar.tgz

.zip
壓縮:zip FileName.zip DirName
解壓:unzip FileName.zip

.rar
壓縮:rar e FileName.rar
解壓:rar a FileName.rar

.lha
壓縮:lha -a FileName.lha FileName
解壓:lha -e FileName.lha

--------------------------------------------------------------------------------------------
Cksum
cksum 檔名 > 檔名.txt
將該檔案check sum的內容寫到指定的txt檔內




mv
mv - 更改、移動目錄或檔案(mv -參數 來源檔 (或目錄) 目的檔 (或目錄))

  1. b:移動之前先做備份
  2. v:做完移動之後顯示所做的移動情形
  3. f:強迫性移動,不會詢問使用者是否確認 

rm
rm - 刪除檔案

  1. rm 檔名 刪除「檔名 
  2. rm -r 資料夾名 刪除「資料夾名

mkdir
mkdir - 建立子目錄(mkdir -參數 目錄名稱

  1. p:連續建立兩個以上不存在的目錄
  2. m:設定這個目錄的存取權限

rmdir
rmdir
find:找尋檔案、目錄
  1. find 【起始目錄】 -name 【欲找的檔名】 -print
  2. 從起始目錄開始尋找檔案;使用萬用字元 * 時須在檔名兩端加 "

chown
chmod
clear

ls(通常會用ls -l或ls -l |more ) 列出檔案資訊(類似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:只顯示目錄訊息而非目錄下的檔案

pwd(看目前路徑) - 列出現在的工作目錄


系統常用指令
ssh遠端連線 需安裝ssh  >#ssh 帳號@ip
scp遠端傳檔 須安裝scp #scp 帳號@ip:目的地 本地路徑

ln     檔案鏈接
沒有接任何子參數 為hard link
ln -s symbolic link
範例:ln 檔案1 檔案2
ls -l後 發現 檔案1→檔案2
ln 藍色資料名 就是鏈接
ln鏈接檔案大小不會是目的檔一樣大
ex.假設a連結b    示意:a→b
用ls -l檢視資料時
a.txt    a.txt→b.txt      5kb
b.txt                         25kb
為什麼a連結b,b有25kb而a只有5kb 因為a只是一個連結檔,可以意會成windows系統下的捷徑 我們看到的5kb的a檔只是捷徑的檔案大小

但是今天我們使用cp指令
cp a.txt c.txt
複製一個a.txt並取名為c.txt
再用ls -l會發現 c.txt 會是   25kb
這表示 是直接複製b.txt的實體 故整個檔案都會複製過來。  



man 指令:查詢系統各個指令的詳細用法
指令 --help   簡單詢指令的用法
history :列出曾經用過的指令
  1. -c:清空 Bash 指令記錄 
  2. -d 編號:可刪除該「編號」的指令
  3. 數字:列出最近「數字」項指令 
  4. -r:以反方向顯示所下過的指令 
  5. n:顯示前n次所下過的指令
whereis:尋找某個指令的檔案位置 → whereis 指令名稱
whatis:查詢某個指令的用途 → whatis 指令名稱
passwd設定密碼
  1. passwd -d 使用者名稱 刪除「使用者名稱」之密碼 
  2. passwd -l 使用者名稱 鎖住「使用者名稱」之帳號,使之失效

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分鐘後關機)

    沒有留言:

    張貼留言