顯示當前路徑。html
新建目錄。linux
mkdir [options] 目錄名;正則表達式
[options]主要參數shell
-m, --mode=模式:設定權限,與chmod相似。express
-p, --parents:須要時建立上層目錄;若是目錄早已存在,則不看成錯誤。windows
-v, --verbose:每次建立新目錄都顯示信息。瀏覽器
--version:顯示版本信息後離開緩存
新建文件。安全
touch [選項]... 文件...服務器
命令參數:
-a 或--time=atime或--time=access或--time=use 只更改存取時間。
-c 或--no-create 不創建任何文檔。
-d 使用指定的日期時間,而非如今的時間。
-f 此參數將忽略不予處理,僅負責解決BSD版本touch指令的兼容性問題。
-m 或--time=mtime或--time=modify 只更改變更時間。
-r 把指定文檔或目錄的日期時間,通通設成和參考文檔或目錄的日期時間相同。
-t 使用指定的日期時間,而非如今的時間。
vi編輯器是全部Unix及Linux系統下標準的編輯器。
內容太多,你們移步http://www.cnblogs.com/mahang/archive/2011/09/01/2161672.html
cat主要有三大功能:
1.一次顯示整個文件。$ cat filename
2.從鍵盤建立一個文件。$ cat > filename
只能建立新文件,不能編輯已有文件.
3.將幾個文件合併爲一個文件: $cat file1 file2 > file
參數:
-n 或 --number 由 1 開始對全部輸出的行數編號
-b 或 --number-nonblank 和 -n 類似,只不過對於空白行不編號
-s 或 --squeeze-blank 當遇到有連續兩行以上的空白行,就代換爲一行的空白行
-v 或 --show-nonprinting
用於在文件樹種查找文件,並做出相應的處理。
find pathname -options [-print -exec -ok ...]
參數:
pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的文件輸出到標準輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式爲'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的做用相同,只不過以一種更爲安全的模式來執行該參數所給出的shell命令,在執行每個命令以前,都會給出提示,讓用戶來肯定是否執行。
-name 按照文件名查找文件。
-perm 按照文件權限來查找文件。
-prune 使用這一選項可使find命令不在當前指定的目錄中查找,若是同時使用 -depth選項,那麼-prune將被find命令忽略。
-user 按照文件屬主來查找文件。
-group 按照文件所屬的組來查找文件。
-mtime -n +n 按照文件的更改時間來查找文件, - n表示文件更改時間距如今n天之內,+ n表示文件更改時間距如今n天之前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。
-nogroup 查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。
-nouser 查找無有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。
-newer file1 ! file2 查找更改時間比文件file1新但比文件file2舊的文件。
-type 查找某一類型的文件,諸如:
b - 塊設備文件。
d - 目錄。
c - 字符設備文件。
p - 管道文件。
l - 符號連接文件。
f - 普通文件。
-size n:[c] 查找文件長度爲n塊的文件,帶有c時表示文件長度以字節計。-depth:在查找文件時,首先查找當前目錄中的文件,而後再在其子目錄中查找。
-fstype:查找位於某一類型文件系統中的文件,這些文件系統類型一般能夠在配置文件/etc/fstab中找到,該配置文件中包含了本系統中有關文件系統的信息。
-mount:在查找文件時不跨越文件系統mount點。
-follow:若是find命令遇到符號連接文件,就跟蹤至連接所指向的文件。
-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設備中。
另外,下面三個的區別:
-amin n 查找系統中最後N分鐘訪問的文件
-atime n 查找系統中最後n*24小時訪問的文件
-cmin n 查找系統中最後N分鐘被改變文件狀態的文件
-ctime n 查找系統中最後n*24小時被改變文件狀態的文件
-mmin n 查找系統中最後N分鐘被改變文件數據的文件
-mtime n 查找系統中最後n*24小時被改變文件數據的文件
參見:http://www.cnblogs.com/peida/archive/2012/11/13/2767374.html
dig 命令主要用來作域名解析,相似windows下面的nslookup。
用法:
dig @dnsserver name querytype
dnsserver 指定DNS解析的服務器地址,默認使用/etc/resolv.conf配置的DNS服務器進行解析;
name 須要進行解析的域名;
querytype 定義須要查詢的記錄類型,默認查詢A記錄;
能夠指定用那個dns進行解析,帶上 @x.x.x.x (x.x.x.x 表示指定的DNS) 好比:
Dig命令能夠用來追蹤解析的完整的過程,帶上參數:+trace
能夠經過參數short 查看簡單的解析記錄:
這個是windows下的域名解析:
指定DNS服務器:nslookup Domain DNS
通常來講,咱們用ipconfig來看配置的IP,其實,ipconfig還能夠用來清空本地的DNS緩存,命令: ipconfig /flushdns ,用在客戶域名切換以後本地清DNS緩存:
相似ping traceroute,測試網絡的連通性。
比較經常使用的參數:
-n 不對IP進行解析,建議使用,能夠提升測試速度;
-i 發包間隔時間,默認爲1秒鐘;
-c 指定發包的個數,和-r參數配合使用;
-s 指定發包的包大小,默認好像64bit;
-r 生成報告的形式。
curl通常用來測試某條URL的請求狀況,默認是不支持斷點續傳。
測試URL:http://dnf.uuu9.com/70c/images/forum/201205/21/1534008f4fo8l754lo844i.gif
比較常見的參數有:
-0 (這是數字的0)默認的話,curl發的是HTTP/1.1的請求,經過 -0 指令,能夠指定使用HTTP/1.0的發送請求;
-o (小寫字母o) 默認狀況下,curl會把整個內容顯示在終端(也就是屏幕)上,能夠經過-o將內容保存在某個文件下,比較常見的是指定到/dev/null ,相似一個垃圾箱;
-O (大寫的O)會根據請求的文件名在本地保存;
-I 只輸出響應頭部;
-x 能夠指定使用代理的模式,指定經過哪一個IP進行請求;eg -x 127.0.0.1:80,須要指定端口信息,不然會報錯;若是設定了-x,則curl請求會是代理模式,若是沒有-x,則是正常的用戶請求,二者存在必定的區別。
帶有-x參數:
未帶-x參數:
-e 用來設定Referer;
-A 用來設定UA頭部;
-H 能夠用來設定請求的頭部;
--compressed 默認狀況下,curl發送的是非壓縮的請求,有時候須要測試壓縮的請求,此時可使用- -compressed參數 來發送壓縮的請求;
-r 在發送請求的時候,能夠用來指定發送range請求;
-u 經過-u 指定用戶名和密碼,能夠用來下載ftp上的內容;
(這條測試命令能夠在2012-7-30號前運行成功:curl -O -u '9aola:*Uo3$Ka2' ftp://ftp.wslog.chinanetcenter.com/www.9aoya.com/2012-07-17-0000-2330_www.9aoya.com.cn.log.gz)
wget是一個從網絡上自動下載文件的自由工具,常見的用法:
默認的話,wget會根據URL中的文件名保存,屢次下載會在後續保存的文件名中記錄數字,相似a.jpg a.jpg.1 a.jpg.2
命令參數介紹:
-o fileName將響應輸出信息保存在指定的文件中,有同名文件時,會覆蓋掉;
-a fileName將響應輸出信息追加到指定文件的末尾,指定文件不存在的話,會新建文件;
-O fileName將下載的文件根據指定的文件名保存;
-c 支持斷點續傳;
-t num 指定斷點續傳重試的次數,默認20次;
-S 顯示響應頭部;
--referer=url 指定請求來源,相似curl的-e選項;
--header= header-line 能夠用來設定請求頭部,相似URL的-H;
-e http-proxy 相似curl的-x參數,指定到具體的服務器請求內容;
固然,使用wget也能夠下載ftp的資源,相似下面的命令:
wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL
相似curl及wget功能,請求某條URL並將響應頭部信息存儲在pollUrl.tmp文件下;運維比較經常使用的命令,瞭解便可。
Usage: pollurl [-DRavsrVHe][-p port][-h remote host][-u unit][-o timeout value][-T temp file][-P post data]url|mgr:*
Options:
[--append_header|--header]="head1:value1\r\nhead2:value2 or file name\r\n"
[--http_version|--http]="1.0|1.1" http version in request, default is 1.0
-D Display received message on the screen
-s append header:Cdn-Src-Ip: localhost
-R Redirect to the new url
-a Compute the time as a task
-v --verbose Display the verbose messages
-r Fetch sub urls
-o the max timeout value
-V --version Display software version
-H --help Help!
-T temp file the pathname in which you get the message from the server saves
-m --method GET|HEAD|QUERY|POST|PURGE default method is GET,use -m POST=data can post data to the server
-e Exclude the urls not in this domain,if you use this,you must also use -r option
-h host Retrieve URL from cache on hostname. Default is localhost.
-p port Port number of cache. Default is 80. if the target url starts with https,the default port is 443
-u m|s The test result displayed in unit (ms) or (s).
-P use POST method to send datas.use -P data can post data to the server
url|mgr:* the target url to be fetched or the message send to the squid server
tcpflow用來抓包的工具,常見用法以下(配合grep命令):
tcpflow [-chpsv] [-b max_bytes] [-d debug_level] [-f max_fds] [-i iface] [-r file] [expression]
常見參數:
-c 輸出到終端;默認狀況tcpflow會把抓包的數據保存到文件中,生成不少相關的文件。
-i 指定抓包使用的接口(經過ifconfig –a 能夠顯示全部接口),若是沒有指定,系統通常會使用lo端口;
-p 不使用promiscuous模式;
-r file 從file文件中讀取數據內容;
案例:
tcpflow -cp |grep --color images/forum/201205/21/1534008f4fo8l754lo844i.gif -6
tcpdump是另一個用來抓包的工具,獲取的包大多沒有解碼,大部分以十六進制形式直接打印輸出,常見用法:
tcpdump -nv host 120.036.156.162 |more
參考文檔:http://network.51cto.com/art/200512/15473.htm
wget http://dnf.uuu9.com/70c/images/forum/201205/21/1534008f4fo8l754lo844i.gif --referer=http://www.baidu.com/ -e http-proxy=59.57.15.219
計算文件的md5值。
md5sum 91rbtest.sh
433bf18f45c0e232323eb90ac8aa07b5 91rbtest.sh
foreach通常用來屢次執行某個命令。
-c 指定循環的次數;
-s 指定分隔符,默認是’\t’;
-w 指定指定命令的進程數;
-m 指定最大進程數爲沒有限制,通常不多用;
案例:
grep (global search regular expression(RE) and print out the line,全面搜索正則表達式並把行打印出來)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。
Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不一樣。egrep是grep的擴展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它們把全部的字母都看做單詞,也就是說,正則表達式中的元字符表示回其自身的字面意義,再也不特殊。linux使用GNU版本的grep。它功能更強,能夠經過-G、-E、-F命令行選項來使用egrep和fgrep的功能。
通常來講grep和正則表達式配合使用用來對特定信息進行過濾,以便進行準確的分析。
經常使用參數:
-E 使用擴展正則表達式,功能同egrep;
-F 不使用正則表達式,功能同fgrep;
-P 使用perl的正則表達式規則;
-i 忽略大小寫;
-o 僅打印匹配的部分;
-n 顯示行號;
-l 顯示匹配的文件名稱,通常用戶搜尋哪一個文件匹配到了關鍵字;
-A 顯示匹配行的後的行數;
-B 顯示匹配行前的行數;
-v 顯示不匹配的內容;
關於正則表達式的對比,能夠參考:
http://www.cnblogs.com/chengmo/archive/2010/10/10/1847287.html
sort將文件的每一行做爲一個單位,相互比較,比較原則是從首字符向後,依次按ASCII碼值進行比較,最後將他們按升序輸出
常見參數:
-f 忽略大小寫;
-n sort默認會按照字符排序,因此可能出現10比2小的狀況,改變這種狀況能夠用-n;
-r 默認的排序方式是升序,-r能夠改變爲降序;
-o 將排序後的內容存入指定的文件,默認爲輸出到標準輸出;
-k 指定使用哪一列數據進行排序,默認是第一列;
關於sort的使用,參見:
http://www.cnblogs.com/51linux/archive/2012/05/23/2515299.html
uniq命令能夠去除排序過的文件中的重複行,所以uniq常常和sort合用。也就是說,爲了使uniq起做用,全部的重複行必須是相鄰的。
選項與參數:
-c 在行首顯示該行在輸入文件中出現的次數
-d 顯示重複出現的行的一個副本,不顯示沒有重複的行
-f 比較時跳過前n列
-i 比較行時忽略字符大小寫
-s n 忽略每行的前n個字符
-u 僅顯示沒有重複出現的行
-w n 對每行第n個字符之後的內容不作比較
參見:
http://www.cnblogs.com/nerxious/archive/2013/01/09/2853534.html
計劃任務列表,能夠設置Linux循環運行的例行性計劃任務。
用戶所創建的crontab文件中,每一行都表明一項任務,每行的每一個字段表明一項設置,它的格式共分爲六個字段,前五段是時間設定段,第六段是要執行的命令段,格式以下:
minute hour day month week command
其中:
minute: 表示分鐘,能夠是從0到59之間的任何整數。
hour:表示小時,能夠是從0到23之間的任何整數。
day:表示日期,能夠是從1到31之間的任何整數。
month:表示月份,能夠是從1到12之間的任何整數。
week:表示星期幾,能夠是從0到7之間的任何整數,這裏的0或7表明星期日。
command:要執行的命令,能夠是系統命令,也能夠是本身編寫的腳本文件。
在以上各個字段中,還可使用如下特殊字符:
星號(*):表明全部可能的值,例如month字段若是是星號,則表示在知足其它字段的制約條件後每個月都執行該命令操做。
逗號(,):能夠用逗號隔開的值指定一個列表範圍,例如,「1,2,5,7,8,9」
中槓(-):能夠用整數之間的中槓表示一個整數範圍,例如「2-6」表示「2,3,4,5,6」
正斜線(/):能夠用正斜線指定時間的間隔頻率,例如「0-23/2」表示每兩小時執行一次。同時正斜線能夠和星號一塊兒使用,例如*/10,若是用在minute字段,表示每十分鐘執行一次。
參見:http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html
man是linux系統下的幫助系統,對某個命令不熟悉的時候,能夠man一下,輸出相關的幫助信息。
查看命令行歷史記錄,顯示機器上記錄到的操做記錄,記錄的歷史命令行數經過環境變量$HISTSIZE設置,而後能夠經過「!nums」這個命令執行某個歷史命令。
ctrl+a 移動到命令行首
ctrl+e 移動到命令行尾
ctrl+u 從當前光標所在位置刪除到命令行首
ctrl+w 從當前光標所在位置刪除到前一個空格位置
cd - 快速返回以前的目錄,至關於瀏覽器的後退功能
!! 執行上一次命令
!vars 執行最近一次以vars開頭的命令
!nums 執行歷史操做記錄當中的第幾個命令