目前分類: 凌客誌 (3)

瀏覽方式: 標題列表 簡短摘要
轉貼自http://bbs-mychat.com/read.php?tid=11253

Listing the Contents of a Stored Directory
(This message will disappear, once this node revised.)
@quote-arg {i changed the order of these nodes around and haven't had a chance to play around with this node's example, yet. i have to play with it and see what it actually does for my own satisfaction, even if what it says *is* correct..}

To get information about the contents of an archived directory, use the directory name as a file name argument in conjunction with --list (-t). To find out file attributes, include the --verbose (-v) option.

For example, to find out about files in the directory `practice', in the archive file `music.tar', type:

$ tar --list --verbose --file=music.tar practice


tar responds:

drwxrwxrwx myself user 0 1990-05-31 21:49 practice/
-rw-rw-rw- myself user 42 1990-05-21 13:29 practice/blues
-rw-rw-rw- myself user 62 1990-05-23 10:55 practice/folk
-rw-rw-rw- myself user 40 1990-05-21 13:30 practice/jazz
-rw-rw-rw- myself user 10240 1990-05-31 21:49 practice/collection.tar


When you use a directory name as a file name argument, tar acts on all the files (including sub-directories) in that directory. 

例如我要解 home.tgz 中的 ncc 目錄
#tar zxvf home.tgz home/ncc

punz 發表在 PIXNET 痞客邦 迴響(0) 引用(0) 人氣(9)

vi指令說明(完整版)

 


.vi 的操作模式
==============
vi 提供兩種操作模式:輸入模式(insert mode)和指令模式(command mode)
。當使用者進入 vi 後,即處在指令模式下,此刻鍵入之任何字元皆被視為
指令。在此模式下可進行刪除、修改等動作。若要輸入資料,則需進入輸入
模式。

.輸入模式
=========
如何進入輸入模式
a (append) 由游標之後加入資料。
A 由該行之末加入資料。
i (insert) 由游標之前加入資料。
I 由該行之首加入資料。
o (open) 新增一行於該行之下供輸入資料之用。
O 新增一行於該行之上供輸入資料之用。

如何離開輸入模式
《ESC》 結束輸入模式。

.指令模式
=========
游標之移動
h 向左移一個字元。
j 向上移一個字元。
k 向下移一個字元。
l 向右移一個字元。
0 移至該行之首
$ 移至該行之末。
^ 移至該行的第一個字元處。
H 移至視窗的第一列。
M 移至視窗的中間那列。
L 移至視窗的最後一列。
G 移至該檔案的最後一列。
+ 移至下一列的第一個字元處。
- 移至上一列的第一個字元處。
( 移至該句之首。 (註一)
) 移至該句之末。
{ 移至該段落之首。 (註二)
} 移至該段落之末。
nG 移至該檔案的第 n 列。
n+ 移至游標所在位置之後的第 n 列。
n- 移至游標所在位置之前的第 n 列。
<Ctrl><g> 會顯示該行之行號、檔案名稱、檔案中最末行之行號、游標
所在行號佔總行號之百分比。

註一:句子(sentence)在vi中是指以『!』、『.』或『?』結束的一串字。
註二:段落(paragraph)在vi中是指以空白行隔開的文字。

.視窗的移動
===========
<Ctrl><f> 視窗往下捲一頁。
<Ctrl><b> 視窗往上捲一頁。
<Ctrl><d> 視窗往下捲半頁。
<Ctrl><u> 視窗往上捲半頁。
<Ctrl><e> 視窗往下捲一行。
<Ctrl><y> 視窗往上捲一行。

.刪除、複製及修改指令介紹 (此單元較少使用)
=========================
d(delete)、c(change)和y(yank)這一類的指令在 vi 中的指令格式為:
Operator + Scope = command
(運算子) (範圍)
運算子:
d 刪除指令。刪除資料,但會將刪除資料複製到記憶體緩衝區。
y 將資料(字組、行列、句子或段落)複製到緩衝區。
p 放置(put)指令,與 d 和 y 配和使用。可將最後delete或yank的資
料放置於游標所在位置之行列下。
c 修改(change)指令,類似delete與insert的組和。刪除一個字組、句
子等之資料,並插入新鍵資料。

範圍:
e 由游標所在位置至該字串的最後一個字元。
w 由游標所在位置至下一個字串的第一個字元。
b 由游標所在位置至前一個字串的第一個字元。
$ 由游標所在位置至該行的最後一個字元。
0 由游標所在位置至該行的第一個字元。
) 由游標所在位置至下一個句子的第一個字元。
( 由游標所在位置至該句子的第一個字元。
{ 由游標所在位置至該段落的最後一個字元。
} 由游標所在位置至該段落的第一個字元。

整行動作
dd 刪除整行。
D 以行為單位,刪除游標後之所有字元。
cc 修改整行的內容。
yy yank整行,使游標所在該行複製到記憶體緩衝區。

.刪除與修改
===========
x 刪除游標所在該字元。
X 刪除游標所在之前一字元。
dd 刪除游標所在該行。
r 用接於此指令之後的字元取代(replace)游標所在字元。
如: ra 將游標所在字元以 a 取代之。
R 進入取代狀態,直到《ESC》為止。
s 刪除游標所在之字元,並進入輸入模式直到《ESC》。
S 刪除游標所在之該行資料,並進入輸入模式直到《ESC》。

.搬移與複製
==========
利用 delete 及 put 指令可完成資料搬移之目的。
利用 yank 及 put 指令可完成資料複製之目的。
yank 和 delete 可將指定的資料複製到記憶體緩衝區,而藉由 put 指令
可將緩衝區內的資料複製到螢幕上。
例:
搬移一行 ‧在該行執行 dd
‧游標移至目的地
‧執行 p
複製一行 ‧在該行執行 yy
‧游標移至目的地
‧執行 p

.指令重複
=========
在指令模式中,可在指令前面加入一數字 n,則此指令動作會重複執行 n
次。
例:
刪除10行 ‧10dd
複製10行 ‧10yy
‧游標移至目的地
‧p
指標往下移10行 ‧10j

.取消前一動作(Undo)
===================
即復原執行上一指令前的內容。

u 恢復最後一個指令之前的結果。
U 恢復游標該行之所有改變。

.搜尋
=====
在vi中可搜尋某一字串,使游標移至該處。

/字串 往游標之後尋找該字串。
?字串 往游標之前尋找該字串。
n 往下繼續尋找下一個相同的字串。
N 往上繼續尋找下一個相同的字串。

.資料的連接
===========
J 句子的連接。將游標所在之下一行連接至游標該行的後面。

若某行資料太長亦可將其分成兩行,只要將游標移至分開點,進入輸入模式
(可利用 a、i等指令)再按《Enter》即可。

.環境的設定
===========
:set nu 設定資料的行號。
:set nonu 取消行號設定。
:set ai 自動內縮。
:set noai 取消自動內縮。

自動內縮(automatic indentation)
在編輯文件或程式時,有時會遇到需要內縮的狀況,『:set ai』即提供自
動內縮的功能,用下例解釋之:
‧vi test
‧(進入編輯視窗後)
this is the test for auto indent
《Tab》start indent ← :set ai (設自動內縮)
《Tab》data
《Tab》data
《Tab》data ← :set noai (取消自動內縮)
the end of auto indent.
‧註:<Ctrl><d> 可刪除《Tab》字元。

.ex指令
=======
讀寫資料
:w 將緩衝區的資料寫入磁碟中。
:10,20w test 將第10行至第20行的資料寫入test檔案。
:10,20w>>test 將第10行至第20行的資料加在test檔案之後。
:r test 將test檔案的資料讀入編輯緩衝區的最後。

刪除、複製及搬移
:10,20d 刪除第10行至第20行的資料。
:10d 刪除第10行的資料。
:%d 刪除整個編輯緩衝區。
:10,20co30 將第10行至第20行的資料複製至第30行之後。
:10,20mo30 將第10行至第20行的資料搬移至第30行之後。

字串搜尋與取代
s(substitute)指令可搜尋某行列範圍。
g(global)指令則可搜尋整個編輯緩衝區的資料。
s指令以第一個滿足該條件的字串為其取代的對象,若該行有數個滿足該條
件的字串,也僅能取代第一個,若想取代所有的字串則需加上g參數。
:1,$s/old/new/g 將檔案中所有的『old』改成『new』。
:10,20s/^/ / 將第10行至第20行資料的最前面插入5個空白。
:%s/old/new/g 將編輯緩衝區中所有的『old』改成『new』。

.恢復編輯時被中斷的檔案
=======================
在編輯過程中,若系統當掉或連線中斷,而緩衝區的資料並還未
被寫回磁碟時,當再度回到系統,執行下列指令即可回復中斷前
的檔案內容。
%vi -r filename

.編輯多個檔案
=============
vi亦提供同時編輯多個檔案的功能,方法如下:
%vi file1 file2 ..

當第一個檔案編修完成後,可利用『:w』將該緩衝區存檔,而後
再利用 『:n』載入下一個檔案。

執行
=============
:!ls
:!php abc.php
可以直接執行程式
:sh
可以直接到 shall 模式



=-============================================
參考網站
http://www.study-area.org/tips/vim/index.html
http://linux.vbird.org/linux_basic/0310vi.php
http://home.educities.edu.tw/rxghome/netbsd/guide/chap-edit.html

punz 發表在 PIXNET 痞客邦 迴響(1) 引用(0) 人氣(47)

Linux 常用指令
su 切換使用者

passwd 改變密碼

man – manual 線上文件

pinfo 類似網頁型式的線上文件 文字編輯器

pwd 顯示目前工作目錄路徑
cd 移動目前所在位置
ls 列出檔案
參數:
-l:列出詳細的檔案資訊
-a:列出全部檔案包括隱藏檔
-R:遞回列出檔案及子目錄其下的所有子目錄和檔案
-x:以多欄方式列出,字母順序由左而右
-i:以i -node來列出,會列出每個檔案在磁碟中的編號
-m:列出檔案時以逗號 , 來分隔
-n:把群組及檔案擁有者名稱轉成數字代碼
-t:依檔案的修改時間排序 (由新而舊)

-u:依檔案上次的存取時間排序 (需與t配合)

-s:檔案的大小以區塊為單位 (每個區塊block = 512 bytes)
-o:用顏色來顯示各種類別的檔案
-r:以相反的英文字母順序顯示
-d:只顯示目錄訊息而非目錄下的檔案
 

mkdir/rmdir 建立目錄/刪除目錄

cp 複製檔案/目錄
參數:
-f:強行複製檔案或目錄
-p:保留檔案的修改時間及存取權限
-r:拷貝時包含目錄及目錄下的檔案
 
rm 刪除檔案/目綠
參數:
-r:刪除其下的檔案及目錄
-f:刪除時不提出警告
 
mv –移動或更名現有的檔案或目錄
參數:
-f:強迫性移動,不會詢問使用者是否確認
 

ifconfig 查看 IP 和網路介面卡

ping 查尋遠端主機

telnet –檢查port 有沒有啟動或者是這個連線有無問題

 
 

crontab 設定排程

參數:
-e:編輯排程
-l:列出排程設定
排程格式

分/時/日/月/週 0 8 * * 4 cd ~/admin-work;./StartHello.sh

 
cat 逐列讀取檔案

head 讀取最前 10

參數:
-n:設定要顯示多少列的內容
 

tail 讀取最後 10

參數:
-n:設定要顯示多少列的內容
 

more 逐頁查看檔案內容

less 逐頁查看檔案內容(內文)

grep –用關鍵字找尋檔案

參數:
-l:列出檔案內容符合指定條件的檔案名稱
-i:忽略大小寫的差別
-n:顯示符合條件那一列之門,標示出該列的列數編號
 
top 查看系統狀態;每隔幾秒更新一次,按 Ctrl + c 結束
ps 查看系統中正在執行的程式之程序資料
參數:
-a:顯示機器上所有使用者執行的程式
-u:顯示以使用者為主名稱和格式
-x:顯示所有程序
-f:顯示樹狀的執行結構
 

kill 終止程式之執行 (配合ps指令)

參數:
-l:列出所有的信號(常用9、18、19)
-s:列出名稱或編號
 
tar 打包加壓縮
參數:
-c:建立壓縮檔
-x:解開壓縮檔
-t:查看壓縮檔內容
-z:使用gzip壓縮
-v:顯示壓縮過程
-f:輸出檔案的檔名
 
參考資料:
 

punz 發表在 PIXNET 痞客邦 迴響(0) 引用(0) 人氣(28)

1