2010年11月4日 星期四

Linux常用的指令

ls:列出檔案資訊
-l:列出詳細的檔案資訊
-a:列出全部檔案包括隱藏檔
-R:遞回列出檔案及子目錄其下的所有子目錄和檔案
-x:以多欄方式列出,字母順序由左而右
-i:以i -node來列出,會列出每個檔案在磁碟中的編號
-m:列出檔案時以逗號 , 來分隔
-n:把群組及檔案擁有者名稱轉成數字代碼
-t:依檔案的修改時間排序 (由新而舊)
-u:依檔案上次的存取時間排序 (需與t配合)
-s:檔案的大小以區塊為單位 (每個區塊block = 512 bytes)
-o:用顏色來顯示各種類別的檔案
-r:以相反的英文字母順序顯示
-d:只顯示目錄訊息而非目錄下的檔案

echo -n :Do not output the trailing newline.不換行
echo –e
下的參數:
\a
ALERT / BELL (從系統喇叭送出鈴聲)
\bBACKSPACE
\c:取消行末之換行符號:原文:suppress trailing newline
\E
ESCAPE,跳脫鍵
\f
FORMFEED,換頁字符
\n
NEWLINE,換行字符
\r
carriage return,回鍵
\t
horizontal tab,表格跳位鍵
\v
VERTICAL TAB,垂直表格跳位鍵
\\
backslash,反斜線本身

cat:顯示檔案內容
-A  :相當於 -vET的整合選項,可列出一些特殊字符而不是空白而已;
-b  :列出行號,僅針對非空白行做行號顯示,空白行不標行號!
-E  :將結尾的斷行字元 $ 顯示出來;
-n  :列印出行號,連同空白行也會有行號,與 -b 的選項不同;
-T  :將 [tab] 按鍵以 ^I 顯示出來;
-v  :列出一些看不出來的特殊字符

more:顯示檔案的內容,如果超過一頁則暫停
指令 | more
參數說明:
-p:先清除螢幕再列出
-c:每頁都清除螢幕一次再從螢幕最頂端列出
-s:如果檔案中有許多連續空白列時,只顯示一列
-l:忽略檔案中的跳頁符號

less (一頁一頁翻動)
指令 | less
空白鍵    :向下翻動一頁;
[pagedown]:向下翻動一頁;
[pageup]  :向上翻動一頁;
q  :離開 less 這個程式;(強烈建議用less,因為可以上下翻動)

mv:更改、移動目錄或檔案
-b:移動之前先做備份
-v:做完移動之後顯示所做的移動情形
-f:強迫性移動,不會詢問使用者是否確認
-i:若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋!

pwd:顯示目前工作目錄路徑

passwd:改變密碼,如passwd root 就是要改root的密碼

rm:刪除檔案或目錄
rm -參數檔案或目錄
-r:刪除其下的檔案及目錄 (常用)
-i:刪除時提出警告
-f:刪除時不提出警告
-d:刪除目錄,即使該目錄並非空目錄

cp:複製檔案
cp -參數來源檔 (或目錄) 目的檔 (或目錄)
-p:保留檔案的修改時間及存取權限
-a:拷貝目錄,保留所有的資訊,包括連結的檔
-d:保留連結的檔案
-s:製造符號連結
-f:拷貝時若相同檔名的檔案直接
蓋不提出警告
-i:拷貝時若相同檔名的檔案不直接
蓋而會提出警告
-l:不拷貝,但是連結檔案
-r:拷貝時包含目錄及目錄下的檔案

mkdir -參數目錄名稱
-p:連續建立兩個以上不存在的目錄(常用)
-m:設定這個目錄的存取權限

rmdir:刪除子目錄,必須為空目錄
rmkdir -參數子目錄名稱
-p:若刪除此目錄之後,其上層目錄變成空目錄,則一併刪除(常用)

grep -參數 '字串' 要尋找的來源檔案

df:查詢硬碟使用量
-a:顯示全部的檔案系統和各分割區的磁碟使用情形
-i:顯示i -nodes的使用量
-k:大小用k來表示 (預設值)
-t:顯示某一個檔案系統的所有分割區磁碟使用量
-x:顯示不是某一個檔案系統的所有分割區磁碟使用量
-T:顯示每個分割區所屬的檔案系統名稱

du:查詢檔案或目錄的磁碟使用空間
-a:顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間
-b:大小用bytes來表示 (預設值為k bytes)
-c:最後再加上總計 (預設值)
-l:計算所有檔案大小
-s:只顯示各檔案大小的總合
-x:只計算同屬同一個檔案系統的檔案
-L:計算所有的檔案大小

find:找尋檔案、目錄 (最好不要用,因為很操硬碟)
useradd:新增使用者
-m :強制!要建立使用者家目錄!(一般帳號預設值)
-s  :後面接一個 shell ,若沒有指定則預設是 /bin/bash,最好是要打/bin/bash
例如我要建一個tester使用者: # useradd  -m –s  /bin/bash tester

chmod:改變檔案權限屬性

shutdown -參數時間訊息
-k:並非真正關機,只是送出訊息
-r:關機後重新開機
-h:關機後不重新開機
-f:快速關機
-n:快速關機,不要經過init的程序
-c:取消關時的程序
-t:在警告訊息和刪除信號間做停留
時間可用now或任意數字 (代表分鐘)
reboot:重新啟動電腦
top:查看系統狀態;每隔幾秒更新一次,按 Ctrl + c 結束

ps:查看系統中正在執行的程式之程序資料
-l:長格式顯示
-u:顯示使用者名稱和起始時間
-i:顯示各程式的詳細執行情況
-s:顯示各程式的訊號名稱
-v:顯示虛擬記憶體使用情況
-m:顯示記憶體分配情形
-f:顯示執行的路行群
-a:其它使用者執行的程式一併顯示出來
-x:顯示所有程序
-r:顯示前景執行的程式
-c:只顯示執行程式的名字
-e:顯示執行程式的環境變數
-f:不顯示標題欄
-w:若訊息一列無法容納,則換列顯示
uname  -r:查詢linux版本
free:查詢目前記憶體的使用情形
uptime:顯示目前的使用者和平均的系統負荷

netstat:查詢網路目前狀況
-a:全部列出
-c:每隔幾秒鐘重新列一遍
-i:界面狀態
-n:以網路IP位址代替名稱列出網路連接情形
-o:列出時間狀態
-r:列出網路的路徑表
-t:列出tcp協定的連接情形
-u:列出udp協定的連接情形
-v:列出版本
-w:列出raw程序連結的資訊
-x:列出有關unix網域socket的資訊
nslookup:查詢一台機器的IP位址及其對應的網域名稱
finger:列出某人的線上資料
finger -參數使用者名稱
-s:使用短格式顯示使用者的各項資訊
-l:使用長格式顯示使用者的各項資訊
-p:使用長格式顯示時不列出計畫檔和專案檔

ping -參數主機位址
-c 次數:送幾次封包給這台主機,然後等待回應
-d:設定SO_DEBUG選項
-f:大量且快速的送網路封包給一台主機,看它的回應
-i 秒數:設定幾秒鐘送一次封包給一台主機,預設值1
-q:不顯示傳送封包的資訊,只顯示最後結果
-l 次數:在次數內,以最快速的方式送封包給一台主機
man:查詢某個指令的輔助說明→ man 指令名稱,要離開man請按q
help:查詢某個內建指令的說明 (bash shell) → help 內建指令名稱
whereis:尋找某個指令的檔案位置→whereis指令名稱
locate:找尋檔案→ locate 相關字
clear:清除螢幕
help : 顯示所有內建命令的清單

cd : 改變目錄位置
 cd -  回到先前的目錄
 cd..  回到上一層目錄
 cd~ = cd   回到家目錄用( home directory )

source = . (不要懷疑就是句點)  在現行的 shell 環境中執行shell程式
alias : 顯示、設定程式別名
unalias : 取程式別名。(unalias + 別名 )
umask : 顯示檔案權限的熟罩值(直接下指令即可)

fc : 列出登入主機之後,最近執行過的指令。
-l :  最近執行過的指令
-l  500 : 列出 「 大於或等於 」指定編號的歷史命令
-l  500  600 : 列出指定編號之間的歷史命令
-r : 列出指定編號以相反順序(由編號由大到小)顯示命令

read : 由標準輸入讀取一列資料
-p :後面可以接提示字元
-t :後面可以接等待的,秒數,不會一直等待使用者
read 之後不加任何參數,直接加上變數名稱,那麼底下就會主動出現一個空白行等待你的輸入
如 : $ read test
       $ 空白的 (請你輸入字元) 我如果輸入 This is a sample 則:
       $  echo $ test

   This is a sample ← 輸入的資料又變成一個變數的內容了。
 
which : 由搜尋路徑(PATH) 中,找出某一命令列程式的檔案位置。
例1: which 命令 :會由path的內容中,找出第一個符合的程式路徑。 
例2: which -a 命令 :會由path的內容中,找出所有符合的程式路徑。
 
who : 顯示現在誰登入主機 

wc : 計算檔案內含的總字數或列數。
-l +檔案名字 : 顯示檔案名字的內容共有幾列。
-c +檔案名字 : 顯示檔案名字共有多少字元。
-w + 檔案名字 : 顯示檔案名字有幾個word。


route : 路由的修改
route add [-net|-host] 『網段或主機』 netmask 『submask』 gw(or dev) 加入路由表
route del [-net|-host] 『網段或主機』 netmask 『submask』 gw(or dev) 刪除路由表
route -n : 顯示路由表

dpkg: Debian,以及基於 Debian 的系統,如 Ubuntu 等,所使用的套件工具格式為 deb
   -i package.deb
 安裝套件
   -r package
 刪除套件
   -P package
 刪除套件(包括設定檔)
   -L package
 列出與該套件關聯的文件
   -l package
 顯示該套件的版本
  --unpack package.deb
 解開 deb 套件的內容
  -S keyword
 搜索所屬的套件內容
   -l
 列出當前已安裝的套件
  -c package.deb
 列出 deb 套件的內容
  --configure package
 設定套件

沒有留言:

張貼留言