Unix Shell
這個部分是總結一下在Unix shell中使用的大多數的命令。
檔案命令
cd directory 改變路徑,如果directory沒有指明,那麼就返回home目錄。
pwd 顯示當前路徑。
ls 顯示目錄下的內容,ls -a會顯示以點開頭的檔案,ls -l會顯示每個檔案的資訊,ls -t將檔案按使用的頻繁程度排序。
rm file 刪除檔案
mv old new 重新命名old檔案為new(也用於在目錄之間移動檔案)。如果已經有一個名為new的檔案,那麼就會覆蓋。
cp old new 建立一個old的副本,並命名為new,如果已經有一個名為new的檔案,那麼就會覆蓋。
mkdir name 建立目錄。
rmdir name s刪除目錄,目錄必須為空白。
速記符和萬用字元
. 目前的目錄。
.. 父級目錄。
~/cs107 home目錄下的cs107目錄.
~user user的home目錄.
* 代表任意個數任一字元(不包括'.'),比如*.c就是所有的以.c結尾的檔案。
? 任意的一個字元(不包括'.').
其他的命令
cat file 在標準輸出中列印file的內容。
more file 和cat類似,但是一次只列印一頁(顯示的時候非常有用)。
less file 和more類似,不過有一個滑動條。(少即多)
w 看那個使用者在系統上,並查看他們在做什麼。
ps 顯示所有的進程(利用進程id來殺死進程)。
jobs 顯示掛起的進程。
program& 後台運行程式。
ctrl-z 掛起當前程式。
% 回到之前掛起的程式,或者用fg命令(foreground)。
%number 繼續一個指定的程式(用jobs命令查看程式號)。
kill process-id 結束一個進程。
kill -9 process 強制結束進程。
grep exp files 子一系列檔案中尋找一個運算式
wc file 計算檔案字數,行數,和字元數。
script 記錄所有運行過的命令, 用exit命令來退出。
lpr file 用預設的印表機列印file 。
lpr -Pinky file 用inky印表機來列印file。
diff file1 file2 顯示兩個檔案的不同之處。
telnet hostname 登入另一個電腦
source file 運行file中的shell命令。
擷取協助
man subject 閱讀某個東西的手冊。
man -k keyword 顯示關於keyword的相關頁面。
曆史
history 顯示最近使用過的命令。
!! 再執行上次的命令(或者在高端的shell裡用向上箭頭)。
!number 再執行特定的命令。
!string 再執行上次的命令。並以string開頭。
^wrong^right 再執行上次的命令,並以right替代wrong。
ctrl-P一個個顯示前面運行過的命令。
管道
a>b 將a的標準輸出覆蓋重新導向至b。
a>>b 將a的標準輸出添加到b中。
a>&b 將a的錯誤資訊覆蓋輸出到b中。
a<b 將a的標準輸入重新導向為b。
a|b 重新導向a的標準輸出為b的標準輸入。
翻譯感想:
這個檔案是在找外國的開放課程偶然得到的,所以拿來和大家分享一下,文中提到的命令和工具我基本都試運行了一下,都沒有問題。
玩ubuntu已經兩三年了,但文中提到的很多的東西居然都沒有接觸過,說來真是有點慚愧....
學了一點技術,學了一點英語,還能分享知識,不錯不錯!!!