(一)基本命令
命令格式: 命令 參數
1.ls 顯示文件名,等同於dos下dir命令
命令格式:ls [option] file
option:
-l 顯示詳細列表
域1 :文件類型和文件權限
域2 :文件連接數
域3 :文件所有者名字
域4 :文件用戶組名字
域5 :文件長度
域6-8 :最近修改日期
域9 :文件名
-a 顯示所有文件,包含隱藏文件(以. 起頭的文件名)
-R 顯示文件及所有子目錄
-F 顯示文件(後跟*)和目錄(後跟/)
-d 與l選項合用,顯示目錄名而非其內容
2.cd 目錄轉換,等同於dos下cd命令
注意目錄分隔符為“/”,與dos相反
命令格式:cd dirname
3.pwd 顯示當前路徑
4.cat 顯示文件內容,等同於dos下type命令
命令格式:cat filename
5.more 以分頁方式查看文件內容.
命令格式:more filename
6.rm 刪除文件
命令格式: rm [-r] filename (filename 可為檔名,或檔名縮寫符號.)
例子 :
rm file1 刪除檔名為 file1 之文檔.
rm file? 刪除檔名中有五個字元,前四個字元為file 之所有文檔.
rm f* 刪除檔名中,以 f 為字首之所有文檔.
rm -r dir1 刪除目錄 dir1,及其下所有文檔及子目錄.
7.mkdir 創建目錄
命令格式: mkdir [-p] directory-name
Exmaple :
mkdir dir1 建立一新目錄 dir1.
mkdir -p dir/subdir 直接創建多級目錄
8.rmdir 刪除目錄
目錄必須首先為空
命令格式: rmdir directory
9.cp 文檔復制
命令格式: cp [-r] source destination
例子:
cp file1 file2 將文檔 file1 復制成 file2
cp file1 dir1 將文檔 file1 復制到目錄 dir1 下,文件名仍為 file1.
cp /tmp/file1 . 將目錄 /tmp 下的文檔 file1復制到現行目錄下,
檔名仍為 file1.
cp /tmp/file1 file2 將目錄 /tmp 下的文檔 file1現行目錄下,檔名
為file2
cp -r dir1 dir2 (recursive copy) 復制整個目錄.
若目錄 dir2 不存在,則將目錄dir1,及其所有文檔和子目錄,
復制到目錄 dir2 下,新目錄名稱為dir1.若目錄dir2不存在,
則將dir1,及其所有文檔和子目錄,復制為目錄 dir2.
10.mv 文件移動
命令格式: mv source destination
例子:
mv file1 file2 將文檔 file1,更改檔名為 file2.
mv file1 dir1 將文檔 file1,移到目錄 dir1 下,檔名仍為 file1.
mv dir1 dir2 若目錄 dir2 不存在,則將目錄 dir1,及其所有檔
案和子目錄,移到目錄 dir2 下,新目錄名稱為 dir1.
若目錄 dir2 不存在,則將dir1,及其所有文檔和子
目錄,更改為目錄 dir2.
11.du 查看目錄所占磁碟容量
命令格式: du [-sk] directory
例子 :
du dir1 顯示目錄 dir1 的總容量及其次目錄的容量
du -sk dir1 顯示目錄 dir1 的總容量,以k bytes為計量
12.find 文件查找
命令格式: find dir -name filename command
例子:
find . -name hello -print 尋找目前目錄及所有的子目錄內叫
hello的文檔.
find . -ctime +7 -print 找出七天內未被更動的文檔
find . -size +2000m -print 找出大小超過2000 bytes的文檔
find /tmp -user b1234567 -print 在/tmp下屬於b1234567的文檔
find 刪除所有的.c檔
find . -name test\* -print 顯示當前目錄及其子目錄文件名前4
位為test的文件名
13.vi 編輯器
命令狀態:
j,k,h,l:上下左右
0: 行首
$: 行尾
i,I :插入命令,i 在當前光標處插入 I 行首插入
a,A:追加命令,a 在當前光標後追加,A 在行末追加
o,O:打開命令,o 在當前行下打開一行,O在當前行上插入一行
r,R :替換命令,r 替換當前光標處字符,R從光標處開始替換
數字s: 替換指定數量字符
x: 刪除光標處字符
dd: 刪除當前行
d0: 刪除光標前半行
d$: 刪除光標後半行
ctrl+f :後翻頁
ctrl+b:前翻頁
G : 文件尾
數字G: 數字所指定行
/string 查找字符串
n 繼續查找
N 反向繼續查找
% 查找對應括號
u 取消上次操作
ex命令狀態
:set number 顯示行號
:set smd 顯示顯示狀態
:0 文件首
:1,5 copy 7 塊拷貝
:1,5 del 塊刪除
:1,5 move 7 塊移動
:1,$s/string1/string2/g 全文件查找string1並替換為string2
:wq! 存盤退出
(二) 增強命令
1. ln 文檔連結
命令格式:ln -s oldname newname ( Hard link )
同一文檔,可擁有一個以上之名稱,可將文檔做數個連結.
例子 :
ln -s file1 file2 將名稱 file2,連結至文檔 file1.
2.grep 搜索字符串
命令格式:
grep string filename
尋找字串的方法很多,比如說我想找所有以M開頭的行.此時必須引進pattern的觀
念.以下是一些簡單的□例,以及說明:
^M 以M開頭的行,^表示開始的意思
M$ 以M結尾的行,$表示結束的意思
^[0-9] 以數字開始的行,[]內可列舉字母
^[124ab] 以1,2,4,a,或b開頭的行
^b.503 句點表示任一字母
* 星號表示0個以上的字母(可以沒有)
+ 加號表示1個以上的字母
\. 斜線可以去掉特殊意義
<eg> cat passwd | grep ^b 列出大學部有申請帳號者名單
cat passwd | grep ^s 列出交換學生申請帳號者名單
cat passwd | grep '^b.503' 列出電機系各年級...
grep '^\.' myfile.txt 列出所有以句點開頭的行
3.fgrep 搜索字符串
命令格式:fgrep string file
4.file 顯示文件類型
命令格式:file fileall
文件類型為shell script,ELF 32bit,ASCII text,data or tar file
5.diff 比較文檔或目錄之不同內容
命令格式:diff [-r] name1 name2 ( name1 name2 可同時為檔名,或目錄名稱.)
例子 :
%diff file1 file2
比較文檔 file1 與 file2 內,各行之不同處.
%diff