Linux SSH命令大全

rm -rf mydir /* 刪除mydir目錄 */
cd mydir /* 進入mydir目錄 */
cd – /* 回上一級目錄 */
cd ~ /* 回根目錄 */
mv tools tool /* 把tools目錄改名爲tool */
ln -s tool bac

/* 給tool目錄創建名爲bac的符號鏈接,最熟悉的應該就是FTP中www鏈接到public_html目錄了 */

cp -a tool /home/leavex/www /* 把tool目錄下所有文件複製到www目錄下 */
rm go.tar /* 刪除go.tar文件 */
find mt.cgi /* 查找文件名爲mt.cgi的文件 */
df –h /* 查看磁盤剩餘空間,好像沒這個必要,除非你太那個了 */
tar xvf wordpress.tar /* 解壓tar格式的文件 */
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */
gzip -d ge.tar.gz /* 解壓.tar.gz文件爲.tar文件 */
unzip phpbb.zip /* 解壓zip文件,windows下要壓縮出一個.tar.gz格式的文件還是有點麻煩的 */
tar cf toole.tar tool /* 把tool目錄打包爲toole.tar文件 */
tar cfz geek.tar.gz tool
/* 把tool目錄打包且壓縮爲geek.tar.gz文件,因爲.tar文件幾乎是沒有壓縮過的,MT的.tar.gz文件解壓成.tar文件後差不多是10MB */

wget http://www.sevenapart.com/download/wp.tar.gz
/*下載遠程服務器上的文件到自己的服務器,連上傳都省了,服務器不是100M就是1000M的帶寬,下載一個2-3兆的MT還不是幾十秒的事 */
wget -c http://www.eightapart.com/undone.zip
/* 繼續下載上次未下載完的文件 */

tar cfz geek.tar.gz tool
/* 把tool目錄打包且壓縮爲geek.tar.gz文件,因爲.tar文件幾乎是沒有壓縮過的,MT的.tar.gz文件解壓成.tar文件後差不多是10MB */

還有一些是VIM裏要用到的,也羅列出來吧!

移動類的:
h/j/k/l: 左/下/上/右 移一格
w : 向後詞移動 (前面加數字移動多少個詞)
b : 向前詞移動 (前面加數字移動多少個詞)
e : 向後移到詞末
ge : 向前移到詞末
$ : 行末
0 : 行首
tx : 向右查找本行的x並移到那兒(大寫時向左)
33G : 移到文件的第33行
gg : 文件首行
G : 文件尾行
33% : 文件的33%處
H/M/L : 屏幕的首/中/尾行
zt/zz/zb : 當前行移到屏幕的首/中/底部

跳轉:
” : 回到跳轉來的地方
CTRL-O : 跳到一個 “較老” 的地方
CTRL-I : 則跳到一個 “較新” 的地方

查找:
/ : 向下查找(後加關鍵字)
? : 向上查找(後加關鍵字)
n : 下一條符合的記錄

編輯:
i : 轉換到插入模式
x : 刪除當前字符
. : 重複最後一次的修改操作(同PS裏ctrl+f執行濾鏡)
u : 撤銷操作
CTRL-R : 重做
p : 將刪除的字符插入到當前位置(put)

退出保存:
:q : 退出
:q! : 不保存退出
ZZ : 保存後退出
:e! : 放棄修改重新編輯

退出SSH後,繼續運行!
#nohup wget http://www.phpv.net/file.tar.gz &

wget是一個Linux環境下用於從World Wide Web上提取文件的工具,這是一個GPL許
可證
下的自由軟件,其作者爲Hrvoje Niksic 。wget支持HTTP和
FTP協議
,支持代理服務器和斷點續傳功能,能夠自動遞歸遠程主機的目錄,找到合乎條件
的文
件並將其下載到本地硬盤上;如果必要,wget將恰當地轉換頁面中的超級連接以在
本地
生成可瀏覽的鏡像。由於沒有交互式界面,wget可在後臺運行,截獲並忽略
HANGUP信號
,因此在用戶推出登錄以後,仍可繼續運行。通常,wget用於成批量地下載
Internet網
站上的文件,或製作遠程網站的鏡像。

語法:

wget [options] [URL-list]
URL地址格式說明:可以使用如下格式的URL:
http://host[:port]/path
例如:
http://fly.cc.fer.hr/
ftp://ftp.xemacs.org/pub/xemacs/xemacs-19.14.tar.gz
ftp://username:password@host/dir/file
在最後一種形式中,以URL編碼形式爲FTP主機提供了用戶名和密碼(當然,也可以
使用
參數提供該信息,見後)。

參數說明:

wget的參數較多,但大部分應用只需要如下幾個常用的參數:
-r 遞歸;對於HTTP主機,wget首先下載URL指定的文件,然後(如果該文
件是
一個HTML文檔的話)遞歸下載該文件所引用(超級連接)的所有文件(遞歸深度由
參數
-l指定)。對FTP主機,該參數意味着要下載URL指定的目錄中的所有文件,遞歸方
法與
HTTP主機類似。

-N 時間戳:該參數指定wget只下載更新的文件,也就是說,與本地目錄中
的對
應文件的長度和最後修改日期一樣的文件將不被下載。

-m 鏡像:相當於同時使用-r和-N參數。

-l 設置遞歸級數;默認爲5。-l1相當於不遞歸;-l0爲無窮遞歸;注意,
當遞
歸深度增加時,文件數量將呈指數級增長。

-t 設置重試次數。當連接中斷(或超時)時,wget將試圖重新連接。如
果指
定-t0,則重試次數設爲無窮多。

-c 指定斷點續傳功能。實際上,wget默認具有斷點續傳功能,只有當你使
用別
的ftp工具下載了某一文件的一部分,並希望wget接着完成此工作的時候,才需要
指定
此參數。

使用舉例:
wget -m -l4 -t0 http://oneweb.com.cn/
將在本地硬盤建立http://oneweb.com.cn/的鏡像,鏡像文件存入當前目錄下一個
名爲
oneweb.com.cn的子目錄中(你也可以使用-nH參數指定不建立該子目錄,而直接在
當前
目錄下建立鏡像的目錄結構),遞歸深度爲4,重試次數爲無窮(若連接出現問題

wget將堅韌不拔地永遠重試下去,知道任務完成!)

另外一些使用頻率稍低的參數如下:
-A acclist / -R rejlist:
這兩個參數用於指定wget接受或排除的文件擴展名,多個名稱之間用逗號隔開。例
如,
假設我們不想下載MPEG視頻影像文件和.AU聲音文件,可使用如下參數:
-R mpg,mpeg,au

其它參數還有:
-L 只擴展相對連接,該參數對於抓取指定站點很有用,可以避免向宿主
主機
的其他目錄擴散。例如,某個人網站地址爲:http://www.xys.org/~ppfl/,使用
如下
命令行:
wget -L http://www.xys.org/~ppfl/
則只提取該個人網站,而不涉及主機www.xys.org上的其他目錄。

-k 轉換連接:HTML文件存盤時,將其中的非相對連接轉換成爲相對連接。

-X 在下載FTP主機上的文件時,排除若干指定的目錄

另外,下面參數用於設置wget的工作界面:
-v 設置wget輸出詳細的工作信息。
-q 設置wget不輸出任何信息。

如果我們已經在一個HTML文檔(或普通文本文檔)中存儲了所要提取的文件的連接
,可
以讓wget直接從該文件中提取信息,而不用在命令行中提供URL地址,參數格式爲

-i filename
地址文件也可以不是HTML文檔,例如,一個普通的文本文件,其中有需要下載的
URL列
表即可。
我們可以用以下技巧提高下載速度:由於Linux是一個多任務系統,我們可以同時
運行
多個wget進程以提高下載速度,例如,先下載某主頁文件(index.html),然後將
該文
件所列出的所有地址分別用一個獨立的wget進程進行下載。

至於其他的參數,可參考wget的man手冊頁,命令爲:
man wget

Post in LAMP | No Comments »

DreamHost中shell使用指南
01月 28th, 2008
DreamHost中shell使用指南

1. Basic Instructions基本操作命令
通常來說,使用”$[Instructions] –help”可以獲得以下各個命令[instructions]的幫助,包含其參數列表的定義。

-ls 列出當前文件夾下所有內容
$ls -o 列出當前文件夾中所有內容,含詳細信息,但不列出group
$ls -l 同上,含group信息
$ls -a 列出當前文件夾中所有內容,包含以”.”開頭的文件
$ls -t 按更改時間排序
$ls -v 按版本先後排序

-cd [dir] 進入文件夾

-pwd 顯示當前路徑

-mkdir [dir] 新建文件夾

-chmod 更改文件/文件夾權限
$chmod [Mode] [dir],其中Mode形如”755″或”777″等。
$chmod [Mode] [file]
$chmod -R [Mode] [dir],遞歸形式,即將目標文件夾內所有文件均改變權限
Mode還有另一種表達方式,”755″即爲”-rwxr-xr-x”,不列舉了。

-rm [file] 刪除文件/文件夾
$rm -f [file] 強行刪除,忽略不存在的文件,無提示
$rm -r [file] 遞歸刪除所有內容

-cp 拷貝
$cp [options] [source] [destination]
其中[options]可以爲-f(強行拷貝)或-r(遞歸拷貝)

-mv 重命名或移動
$mv [options] [source] [destination]
[options]常用:-f(強行移動/重命名), -i(移動/重命名前嘗試), -u(更新)
例如
$mv wwwroot/cgi-bin . 將/cgi-bin目錄移動到當前目錄下
$mv cronfile.txt myfile.txt 將cronfile.txt重命名爲myfile.txt

2. wget下載工具
wget是一種非交互式的網絡文件下載工具,在linux下可以使用該工具快速地從網絡上下載所需要的文件而不需要經由本地硬盤中轉,而且速度極快。以下是一些使用方法:

wget [參數列表] URL

最簡單的用法:

$wget http://targetdomain.com/file.tar

wget的常用參數:
· -t [nuber of times]:嘗試次數,當wget無法與服務器建立連接時,嘗試連接多少次。比如”-t120″表示嘗試120次。當這一項爲”0″的時候,指定嘗試無窮多次直到連接成功爲止,這個設置非常有用,當對方服務器突然關機或者網絡突然中斷的時候,可以在恢復正常後繼續下載沒有傳完的文件;

· -c:斷點續傳,這也是個非常有用的設置,特別當下載比較大的文件的時候,如果中途意外中斷,那麼連接恢復的時候會從上次沒傳完的地方接着傳,而不是又從頭開始,使用這一項需要遠程服務器也支持斷點續傳,一般來講,基於UNIX/linux的Web/FTP服務器都支持斷點續傳;

· -T [number of seconds]:超時時間,指定多長時間遠程服務器沒有響應就中斷連接,開始下一次嘗試。比如”-T120″表示如果120秒以後遠程服務器沒有發過來數據,就重新嘗試連接。如果網絡速度比較快,這個時間可以設置的短些,相反,可以設置的長一些,一般最多不超過900,通常也不少於60,一般設置在 120左右比較合適;

· -w [number of seconds]:在兩次嘗試之間等待多少秒,比如”-w 100″表示兩次嘗試之間等待100秒;

· -nd:不下載目錄結構,把從服務器所有指定目錄下載的文件都堆到當前目錄裏;

· -x:與”-nd”設置剛好相反,創建完整的目錄結構,例如”wget -nd http://www.gnu.org/ “,實際的目錄結構一級一級建下去,直到所有的文件都傳完爲止;

· -nH:不創建以目標主機域名爲目錄名的目錄,將目標主機的目錄結構直接下到當前目錄下;

· -r:遞歸下載,在本機建立服務器端目錄結構;

· -l [depth]:下載遠程服務器目錄結構的深度,例如”-l 5″下載目錄深度小於或者等於5以內的目錄結構或者文件;

· -m:做站點鏡像時的選項,如果你想做一個站點的鏡像,使用這個選項,它將自動設定其他合適的選項以便於站點鏡像;

· -np:只下載目標站點指定目錄及其子目錄的內容。這也是一個非常有用的選項,我們假設某個人的個人主頁裏面有一個指向這個站點其他人個人主頁的連接,而我們只想下載這個人的個人主頁,如果不設置這個選項,甚至–有可能把整個站點給抓下來,這顯然是我們通常不希望的;

· –http-user=username
· –http-passwd=password:如果Web服務器需要指定用戶名和口令,用這兩項來設定;

· -O 將數據寫入文件中。

3. Crontab 定時執行任務

在DreamHost系統下, 通過Shell可以建立自己的crontab. 具體使用如下:
使用支持shell登錄的終端(如fterm或putty), 地址欄輸入 [email protected]:22即可以SSH方式登錄至服務器.

常用的crontab命令:
crontab -l 顯示所有現存cron job.

crontab -r 刪除當前cron jobs.

crontab -e 編輯當前 “crontab file”. DH推薦使用nano

注意你的crontab包含所有的cron jobs, 每個cron一行, 斷行結尾. 一個正常的cron如下所示:

45 2 * * * /home/user/script.pl
第一個數字是每小時的第幾分鐘,
第二個數字是每天的第幾小時,
第三個數字是每月的第幾天,
第四個數字是每年的第幾月,
第五個數字是每週的第幾天.

使用方式例如:
32 * * * * : 表示每小時的第32分鐘.
12,42 * * * * : 表示每小時的第12及第42分鐘兩次
*/15 */2 * * *: 表示0:00, 0:15, 0:30, 0:45, 2:00, 2:15, 2:30, …
43 18 * * 7: 表示每個週日的6:43pm運行命令行.

在DreamHost下使用nano編輯完文件後,使用ctrl+o保存,ctrl+x退出編輯。

4. tar命令
tar命令的使用方法如下:

tar [參數列表] [文件名]

參數列表:
-c 生成新的備份,並同時覆蓋舊的備份文件
-x 從備份文件中解壓縮
-t 列出備份文件內的文件目錄
-v 顯示所有被操作文件列表
-f 在指定位置生成備份
-u 將不存在於備份中的文件,或將已經被更改的文件加入該備份中。

舉例說明:
tar cvf filename.tar /*製作備份*/
tar cvf tarfile.tar ./filename /*將filename的文件備份到tarfile.tar裏面*/
tar tvf filename.tar /*列出tar文檔的內容*/
tar xvf filename.tar /*從tar文檔中導出文件*/
tar zxpvf filename.tar.gz /*從tar.gz文檔中導出文件*/
tar zxvf filename.tar.gz /*同上*/
tar xvf tarfile.tar ./filename /*導出tar文件中的單個文件*/

5. vi編輯器
Linux下很易用的一種編輯器,只需要稍微知道幾個指令即可應用。

打開vi:
$vi [filename]:打開或新建文件,並將光標置於第一行首
$vi +n [filename] :打開文件,並將光標置於第n行首
$vi + [filename] :打開文件,並將光標置於最後一行首
$vi +/pattern [filename]:打開文件,並將光標置於第一個與pattern匹配的串處
$vi -r [filename] :在上次正用vi編輯時發生系統崩潰,恢復filename
$vi [filename]….[filename] :打開多個文件,依次編輯

如果filename不存在,則自動生成一個名字filename的新文件。

vi共有兩種狀態:命令狀態/編輯狀態

編輯狀態下:
第一次按下insert鍵爲”insert”模式,再按一下爲”replace”模式,使用ESC返回命令狀態;
在此狀態下鍵盤的PgUp/PgDn/Insert/Delete/Home/End/方向鍵,均處於正常功能狀態。

命令狀態下:
輸入的字符串作爲命令處理,使用”insert”鍵切換到編輯狀態;
以下是命令狀態下的命令清單:

移動光標類命令
h :光標左移一個字符
l :光標右移一個字符
space:光標右移一個字符
Backspace:光標左移一個字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個字至字首
b或B :光標左移一個字至字首
e或E :光標右移一個字j至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n$:光標移至第n行尾
H :光標移至屏幕頂行
M :光標移至屏幕中間行
L :光標移至屏幕最後行
0:(注意是數字零)光標移至當前行首
$:光標移至當前行尾

屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。

插入文本類命令
i :在光標前
I :在當前行首
a:光標後
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字符
R:替換當前字符及其後的字符,直至按ESC鍵
s:從當前光標位置處開始,以輸入的文本替代指定數目的字符
S:刪除指定數目的行,並以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行

刪除命令
ndw或ndW:刪除光標處開始及其後的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其後n-1行
x或X:刪除一個字符,x刪除光標後的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本

搜索及替換命令 :
/pattern:從光標開始處向文件尾搜索pattern
?pattern:從光標開始處向文件首搜索pattern
n:在同一方向重複上一次搜索命令
N:在反方向上重複上一次搜索命令
:s/p1/p2/g:將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換

選項設置
all:列出所有選項設置情況
term:設置終端類型
ignorance:在搜索中忽略大小寫
list:顯示製表位(Ctrl+I)和行尾標誌($)
number:顯示行號
report:顯示由面向行的命令修改過的數目
terse:顯示簡短的警告信息
warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息
nomagic:允許在搜索模式中,使用前面不帶“/”的特殊字符
nowrapscan:禁止vi在搜索到達文件兩端時,又從另一端開始
mesg:允許vi顯示其他用戶用write寫到自己終端上的信息

最後行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開文件filename進行編輯
:x:保存當前文件並退出
:q:退出vi
:q!:不保存文件並退出vi
:!command:執行shell命令command
:n1,n2 w!command:將文件中n1行至n2行的內容作爲command的輸入並執行之,若不指
定n1,n2,則表示將整個文件內容作爲command的輸入
:r!command:將命令command的輸出結果放到當前行 。Adminis

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章