shell 常用命令
生活随笔
收集整理的這篇文章主要介紹了
shell 常用命令
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
shell 常用命令
?
| Shell基本命令 幾個(gè)基本的shell命令,用ssh管理主機(jī)必備。 1.ls??列出目錄下的文件,不同類型的文件顏色不同,例如藍(lán)色是文件夾,白色是文件 [root@restoretmp steph]# ls file.html public_html??test [root@restoretmp steph]# 參數(shù): ls -a 列出所有文件,包括隱藏文件 [root@restoretmp steph]# ls -a .??..??.bash_logout??.bash_profile??.bashrc??file.html public_html??test [root@restoretmp steph]# ls -l 列出所有者 size 文件權(quán)限 修改日期 ls -R 遞歸列出所有子目錄的內(nèi)容 2. cd??轉(zhuǎn)移目錄 cd /home/steph 將轉(zhuǎn)移到/home/steph cd .. 上移一個(gè)目錄 cd 回到根目錄 3. 建立新文件和文件夾 touch new-filename 建立新文件 mkdir new-directory 建立新目錄 4.刪除文件和目錄 rm filename 刪除名為 filename的文件 rmdir foldername 刪除名為foldername的目錄 5.修改文件夾權(quán)限 chmod 755 foldername 將把名為foldername的文件夾的權(quán)限修改為755 6.修改用戶 chown steph:steph file.html 把file.html的用戶修改為steph:steph 2. 壓縮和解壓縮文件 gzip 和 gunzip 壓縮:? gzip??filename 文件即會(huì)被壓縮,并被保存為 filename.gz 解壓縮:? gunzip filename.gz filename.gz 會(huì)被刪除,而繼之以 filename 可以通過(guò)命令man gip 和man gunzip獲得命令的詳細(xì)說(shuō)明. zip 和 unzip 要使用 zip 來(lái)壓縮文件,在 shell 提示下鍵入下面的命令: zip -r filename.zip filesdir 在這個(gè)例子里,filename.zip 代表你創(chuàng)建的文件,filesdir 代表你想放置新 zip 文件的目錄。-r 選項(xiàng)指定你想遞歸地(recursively)包括所有包括在 filesdir 目錄中的文件。 要解壓縮 zip 文件的內(nèi)容,鍵入以下命令: unzip filename.zip 你可以使用 zip 命令同時(shí)處理多個(gè)文件和目錄,方法是將它們逐一列出,并用空格間隔: zip -r filename.zip file1 file2 file3 /usr/work/school 上面的命令把 file1、file2、 file3、以及 /usr/work/school 目錄的內(nèi)容(假設(shè)這個(gè)目錄存在)壓縮起來(lái),然后放入 filename.zip 文件中。 運(yùn)行FTP Wget實(shí)現(xiàn)上傳下載 1. 用FTP將服務(wù)器上的文件上傳到其他服務(wù)器 [root]$ ftp???? /*啟用FTP客戶端 ftp> open??202.103.1.2?? /*打開遠(yuǎn)程服務(wù)器IP Connected to 202.103.1.2. 220 ProFTPD 1.2.9 Server ready. Name (218.93.205.112:qqroot): user??/*輸入用戶名 331 Password required for oran. Password:??????????????????/*輸入密碼 230 User oran logged in. put idcspy.tar.gz idcspy.tar.gz /*這是關(guān)鍵,put是上傳命令,第一個(gè)idcspy.tar.gz是本地文件名,第二個(gè)是遠(yuǎn)程文件名。。意思就是把本地的idcspy.tar.gz上傳到遠(yuǎn)程FTP里,并且命名為idcspy.tar.gz這樣,SSH就可以自己上傳了。你就可以做別的事情了。 2. Wget下載文件 使用方法: wget的使用形式是: wget [參數(shù)列表] URL 首先來(lái)介紹一下wget的主要參數(shù): · -b:讓wget在后臺(tái)運(yùn)行,記錄文件寫在當(dāng)前目錄下”wget-log”文件中; · -t [nuber of times]:嘗試次數(shù),當(dāng)wget無(wú)法與服務(wù)器建立連接時(shí),嘗試連接多少次 。比如”-t 120〃表示嘗試120次。當(dāng)這一項(xiàng)為”0〃的時(shí)候,指定嘗試無(wú)窮多次直到連接成功為止,這個(gè) 設(shè)置非常有用,當(dāng)對(duì)方服務(wù)器突然關(guān)機(jī)或者網(wǎng)絡(luò)突然中斷的時(shí)候,可以在恢復(fù)正常后繼續(xù) 下載沒有傳完的文件; · -c:斷點(diǎn)續(xù)傳,這也是個(gè)非常有用的設(shè)置,特別當(dāng)下載比較大的文件的時(shí)候,如果中 途意外中斷,那么連接恢復(fù)的時(shí)候會(huì)從上次沒傳完的地方接著傳,而不是又從頭開始,使 用這一項(xiàng)需要遠(yuǎn)程服務(wù)器也支持?jǐn)帱c(diǎn)續(xù)傳,一般來(lái)講,基于UNIX/Linux的Web/FTP服務(wù)器 都支持?jǐn)帱c(diǎn)續(xù)傳; · -T [number of seconds]:超時(shí)時(shí)間,指定多長(zhǎng)時(shí)間遠(yuǎn)程服務(wù)器沒有響應(yīng)就中斷連接 ,開始下一次嘗試。比如”-T 120〃表示如果120秒以后遠(yuǎn)程服務(wù)器沒有發(fā)過(guò)來(lái)數(shù)據(jù),就重新嘗試連接。如果網(wǎng)絡(luò)速度比 較快,這個(gè)時(shí)間可以設(shè)置的短些,相反,可以設(shè)置的長(zhǎng)一些,一般最多不超過(guò)900,通常 也不少于60,一般設(shè)置在120左右比較合適; · -w [number of seconds]:在兩次嘗試之間等待多少秒,比如”-w 100〃表示兩次嘗試 之間等待100秒; · -Y on/off:通過(guò)/不通過(guò)代理服務(wù)器進(jìn)行連接; · -Q [byetes]:限制下載文件的總大小最多不能超過(guò)多少,比如”-Q2k”表示不能超過(guò)2K 字節(jié),”-Q3m”表示最多不能超過(guò)3M字節(jié),如果數(shù)字后面什么都不加,就表示是以字節(jié)為單 位,比如”-Q200〃表示最多不能超過(guò)200字節(jié); · -nd:不下載目錄結(jié)構(gòu),把從服務(wù)器所有指定目錄下載的文件都堆到當(dāng)前目錄里; · -x:與”-nd”設(shè)置剛好相反,創(chuàng)建完整的目錄結(jié)構(gòu),例如”wget -nd http://www.gnu.org“將創(chuàng)建在當(dāng)前目錄下創(chuàng)建”www.gnu.org”子目錄,然后按照服務(wù)器 實(shí)際的目錄結(jié)構(gòu)一級(jí)一級(jí)建下去,直到所有的文件都傳完為止; · -nH:不創(chuàng)建以目標(biāo)主機(jī)域名為目錄名的目錄,將目標(biāo)主機(jī)的目錄結(jié)構(gòu)直接下到當(dāng)前目 錄下; · –http-user=username · –http-passwd=password:如果Web服務(wù)器需要指定用戶名和口令,用這兩項(xiàng)來(lái)設(shè)定; · –proxy-user=username · –proxy-passwd=password:如果代理服務(wù)器需要輸入用戶名和口令,使用這兩個(gè)選項(xiàng) ; · -r:在本機(jī)建立服務(wù)器端目錄結(jié)構(gòu); · -l [depth]:下載遠(yuǎn)程服務(wù)器目錄結(jié)構(gòu)的深度,例如”-l 5〃下載目錄深度小于或者等 于5以內(nèi)的目錄結(jié)構(gòu)或者文件; · -m:做站點(diǎn)鏡像時(shí)的選項(xiàng),如果你想做一個(gè)站點(diǎn)的鏡像,使用這個(gè)選項(xiàng),它將自動(dòng)設(shè) 定其他合適的選項(xiàng)以便于站點(diǎn)鏡像; · -np:只下載目標(biāo)站點(diǎn)指定目錄及其子目錄的內(nèi)容。這也是一個(gè)非常有用的選項(xiàng),我們 假設(shè)某個(gè)人的個(gè)人主頁(yè)里面有一個(gè)指向這個(gè)站點(diǎn)其他人個(gè)人主頁(yè)的連接,而我們只想下載 這個(gè)人的個(gè)人主頁(yè),如果不設(shè)置這個(gè)選項(xiàng),甚至–有可能把整個(gè)站點(diǎn)給抓下來(lái),這顯然是 我們通常不希望的; ü 如何設(shè)定wget所使用的代理服務(wù)器 wget可以使用用戶設(shè)置文件”.wgetrc”來(lái)讀取很多設(shè)置,我們這里主要利用這個(gè)文件來(lái)是 設(shè)置代理服務(wù)器。使用者用什么用戶登錄,那么什么用戶主目錄下的”.wgetrc”文件就起 作用。例如,”root”用戶如果想使用”.wgetrc”來(lái)設(shè)置代理服務(wù)器,”/root/.wgert”就起 作用,下面給出一個(gè)”.wge trc”文件的內(nèi)容,讀者可以參照這個(gè)例子來(lái)編寫自己的”wgetrc”文件: http-proxy = 111.111.111.111:8080 ftp-proxy = 111.111.111.111:8080 這兩行的含義是,代理服務(wù)器IP地址為:111.111.111.111,端口號(hào)為:80。第一行指定 HTTP協(xié)議所使用的代理服務(wù)器,第二行指定FTP協(xié)議所使用的代理服務(wù)器。 第二篇: $ wget –help GNU Wget 1.9.1,非交互式的網(wǎng)絡(luò)文件下載工具。 用法: wget [選項(xiàng)]… [URL]… 長(zhǎng)選項(xiàng)必須用的參數(shù)在使用短選項(xiàng)時(shí)也是必須的。 啟動(dòng): -V, –version??????顯示 Wget 的版本并且退出。 -h, –help?????? 打印此幫助。 -b, -background???? 啟動(dòng)后進(jìn)入后臺(tái)操作。 -e, -execute=COMMAND??運(yùn)行‘.wgetrc’形式的命令。 日志記錄及輸入文件: -o, –output-file=文件?? 將日志消息寫入到指定文件中。 -a, –append-output=文件??將日志消息追加到指定文件的末端。 -d, –debug????????打印調(diào)試輸出。 -q, –quiet????????安靜模式(不輸出信息)。 -v, –verbose????????詳細(xì)輸出模式(默認(rèn))。 -nv, –non-verbose???? 關(guān)閉詳細(xì)輸出模式,但不進(jìn)入安靜模式。 -i, –input-file=文件?? 下載從指定文件中找到的 URL。 -F, –force-html??????以 HTML 方式處理輸入文件。 -B, –base=URL?????? 使用 -F -i 文件選項(xiàng)時(shí),在相對(duì)鏈接前添加指定的 URL。 下載: -t, –tries=次數(shù)?????? 配置重試次數(shù)(0 表示無(wú)限)。 –retry-connrefused?? 即使拒絕連接也重試。 -O??–output-document=文件??將數(shù)據(jù)寫入此文件中。 -nc, –no-clobber?????? 不更改已經(jīng)存在的文件,也不使用在文件名后 添加 .#(# 為數(shù)字)的方法寫入新的文件。 -c, –continue????????繼續(xù)接收已下載了一部分的文件。 –progress=方式???? 選擇下載進(jìn)度的表示方式。 -N, –times*****ping??????除非遠(yuǎn)程文件較新,否則不再取回。 -S, –server-response????顯示服務(wù)器回應(yīng)消息。 –spider???????? 不下載任何數(shù)據(jù)。 -T, –timeout=秒數(shù)??????配置讀取數(shù)據(jù)的超時(shí)時(shí)間 (秒數(shù))。 -w, –wait=秒數(shù)?????? 接收不同文件之間等待的秒數(shù)。 –waitretry=秒數(shù)???? 在每次重試之間稍等一段時(shí)間 (由 1 秒至指定的 秒數(shù)不等)。 –random-wait??????接收不同文件之間稍等一段時(shí)間(由 0 秒至 2*WAIT 秒不等)。 -Y, –proxy=on/off??????打開或關(guān)閉代理服務(wù)器。 -Q, –quota=大小?????? 配置接收數(shù)據(jù)的限額大小。 –bind-address=地址?? 使用本機(jī)的指定地址 (主機(jī)名稱或 IP) 進(jìn)行連接。 –limit-rate=速率????限制下載的速率。 –dns-cache=off???? 禁止查找存于高速緩存中的 DNS。 –restrict-file-names=OS 限制文件名中的字符為指定的 OS (操作系統(tǒng)) 所允許的字符。 目錄: -nd –no-directories??????不創(chuàng)建目錄。 -x, –force-directories???? 強(qiáng)制創(chuàng)建目錄。 -nH, –no-host-directories????不創(chuàng)建含有遠(yuǎn)程主機(jī)名稱的目錄。 -P, –directory-prefix=名稱?? 保存文件前先創(chuàng)建指定名稱的目錄。 –cut-dirs=數(shù)目?????? 忽略遠(yuǎn)程目錄中指定數(shù)目的目錄層。 HTTP 選項(xiàng): –http-user=用戶??配置 http 用戶名。 –http-passwd=密碼??配置 http 用戶密碼。 -C, –cache=on/off????(不)使用服務(wù)器中的高速緩存中的數(shù)據(jù) (默認(rèn)是使用的)。 -E, –html-extension?? 將所有 MIME 類型為 text/html 的文件都加上 .html 擴(kuò)展文件名。 –ignore-length????忽略“Content-Length”文件頭字段。 –header=字符串???? 在文件頭中添加指定字符串。 –proxy-user=用戶??配置代理服務(wù)器用戶名。 –proxy-passwd=密碼??配置代理服務(wù)器用戶密碼。 –referer=URL???? 在 HTTP 請(qǐng)求中包含“Referer:URL”頭。 -s, –save-headers????將 HTTP 頭存入文件。 -U, –user-agent=AGENT??標(biāo)志為 AGENT 而不是 Wget/VERSION。 –no-http-keep-alive 禁用 HTTP keep-alive(持久性連接)。 –cookies=off???? 禁用 cookie。 –load-cookies=文件??會(huì)話開始前由指定文件載入 cookie。 –save-cookies=文件??會(huì)話結(jié)束后將 cookie 保存至指定文件。 –post-data=字符串??使用 POST 方法,發(fā)送指定字符串。 –post-file=文件?? 使用 POST 方法,發(fā)送指定文件中的內(nèi)容。 HTTPS (SSL) 選項(xiàng): –sslcertfile=文件?? 可選的客戶段端證書。 –sslcertkey=密鑰文件 對(duì)此證書可選的“密鑰文件”。 –egd-file=文件????EGD socket 文件名。 –sslcadir=目錄???? CA 散列表所在的目錄。 –sslcafile=文件?? 包含 CA 的文件。 –sslcerttype=0/1?? Client-Cert 類型 0=PEM (默認(rèn)) / 1=ASN1 (DER) –sslcheckcert=0/1?? 根據(jù)提供的 CA 檢查服務(wù)器的證書 –sslprotocol=0-3?? 選擇 SSL 協(xié)議;0=自動(dòng)選擇, 1=SSLv2 2=SSLv3 3=TLSv1 FTP 選項(xiàng): -nr, –dont-remove-listing??不刪除“.listing”文件。 -g, –glob=on/off??????設(shè)置是否展開有通配符的文件名。 –passive-ftp??????使用“被動(dòng)”傳輸模式。 –retr-symlinks???? 在遞歸模式中,下載鏈接所指示的文件(連至目錄 則例外)。 遞歸下載: -r, –recursive???? 遞歸下載。 -l, –level=數(shù)字???? 最大遞歸深度(inf 或 0 表示無(wú)限)。 –delete-after????刪除下載后的文件。 -k, –convert-links?? 將絕對(duì)鏈接轉(zhuǎn)換為相對(duì)鏈接。 -K, –backup-converted??轉(zhuǎn)換文件 X 前先將其備份為 X.orig。 -m, –mirror?????? 等效于 -r -N -l inf -nr 的選項(xiàng)。 -p, –page-requisites??下載所有顯示完整網(wǎng)頁(yè)所需的文件,例如圖像。 –strict-comments??打開對(duì) HTML 備注的嚴(yán)格(SGML)處理選項(xiàng)。 遞歸下載時(shí)有關(guān)接受/拒絕的選項(xiàng): -A, –accept=列表????????接受的文件樣式列表,以逗號(hào)分隔。 -R, –reject=列表????????排除的文件樣式列表,以逗號(hào)分隔。 -D, –domains=列表????????接受的域列表,以逗號(hào)分隔。 –exclude-domains=列表????排除的域列表,以逗號(hào)分隔。 –follow-ftp???????? 跟隨 HTML 文件中的 FTP 鏈接。 –follow-tags=列表??????要跟隨的 HTML 標(biāo)記,以逗號(hào)分隔。 -G, –ignore-tags=列表??????要忽略的 HTML 標(biāo)記,以逗號(hào)分隔。 -H, –span-hosts???????? 遞歸時(shí)可進(jìn)入其它主機(jī)。 -L, –relative??????????只跟隨相對(duì)鏈接。 -I, –include-directories=列表??要下載的目錄列表。 -X, –exclude-directories=列表??要排除的目錄列表。 -np, –no-parent???????? 不搜索上層目錄。 一個(gè)講解的不錯(cuò)的Wget說(shuō)明 wget是一個(gè)命令行工具,用于批量下載文件,支持HTTP和FTP。究竟比其他的工具好在哪里?看看內(nèi)容吧? wget基本上所有的Linux版本都自己帶了,但是有多少人在用呢?呵呵,如果你沒有用過(guò),不妨試試。Windows下面的用戶可以使用GNUwin32的項(xiàng)目,wget,基本功能完全一致。好吧,我們來(lái)以幾個(gè)簡(jiǎn)單的例子看看wget的威力。 如果我們想下載ftp里面某個(gè)目錄里面的所有文件,我們也可以不用ftp這個(gè)笨蛋,呵呵,可以享受cute ftp等圖形化工具的拖一個(gè)目錄的輕松了。如 wget -r?ftp://10.8.8.8/movie/ 呵呵,等吧!下完了,發(fā)覺有些不對(duì)勁,怎么出來(lái)個(gè)10.8.8.8的目錄,進(jìn)去看看,又是一個(gè)movie,哦,wget將目錄結(jié)構(gòu)和網(wǎng)站標(biāo)題都給記錄下來(lái)了,不要??沒有問題!比如說(shuō)還是這個(gè)例子 wget -r -nd?ftp://10.8.8.8/movie/ 結(jié)果什么目錄都沒有了,faint!怎么會(huì)這樣?呵呵,你如果想要這樣就讓它這樣吧,否則使用 wget -r -nH?ftp://10.8.8.8/movie/ 恩?movie也不要?OK,那就這樣 wget -r -nH –cut-dirs=1?ftp://10.8.8.8/movie/ 這有什么用啊?cuteftp比他好用多了,而且,你這斷了線能連嗎?呵呵,不好意思,可以連 wget -c -r -nH –cut-dirs=1?ftp://10.8.8.8/movie/ 但是cuteftp能做下面的事情嗎?比如,現(xiàn)在很多網(wǎng)站使用Apache建站,并不提供ftp服務(wù),但是Apache有一個(gè)indexing功能,可以 提供一個(gè)類似于ftp的界面,好多文件我想下啊,怎么辦?由于是HTTP協(xié)議,CuteFTP無(wú)能為力了,倒是flash get等有什么get all這種功能,不知道他們對(duì)于目錄處理怎么樣。但是wget一點(diǎn)問題都沒有,不信?我們拿CTAN為例(例子并不恰當(dāng),CTAN有FTP服務(wù)),我們下 載這里面所有的宏包,呵呵 wget -r -k?http://www.ctan.org/tex-archive/macros/latex/ -k表示將連接轉(zhuǎn)換為本地連接。但是現(xiàn)在同樣有上面的問題啊,那就把你需要的加上吧,另外也許你根本不需要向下走那么多層,比如,我們就要到第二層,那么 wget -r -l2 -k?http://www.ctan.org/tex-archive/macros/latex/ 現(xiàn)在新的問題是,由于網(wǎng)頁(yè)有一個(gè)排序功能,很討厭,因?yàn)橄螺d的時(shí)候把網(wǎng)頁(yè)重復(fù)了好多次,那么我們可使用-A和-R開關(guān)控制下載類型,并且可以使用通配符,呵呵,現(xiàn)在隨心所欲了吧 wget -r -R “.htm?*” -k?http://www.ctan.org/tex-archive/macros/latex/ 這次沒有那種網(wǎng)頁(yè)了吧?-R的意義在于拒絕下載匹配類型的文件,-A表示僅僅接受的文件類型,如-A “*.gif”將僅下載gif圖片,如果有多個(gè)允許或者不允許,可以使用,分開。 那么,我們現(xiàn)在在使用代理服務(wù)器,怎么辦呢?呵呵,很高興你選擇了wget,你可以使用它的配置文件,環(huán)境變量來(lái)利用代理。這里推薦使用環(huán)境變量,如在 bash里面我們可以把天天用的proxy加到.bash_profile里面,這是Linux標(biāo)準(zhǔn)寫法(很多軟件都用的,什么apt-get,yum等 等) export http_proxy=http://10.20.30.40:8080 然后,proxy就默認(rèn)打開了,如果需要暫時(shí)關(guān)閉,可以使用 wget –proxy=off -r -k?http://www.ctan.org/tex-archive/macros/latex/ 當(dāng)然,寫一個(gè).wgetrc文件也可以,該文件可以從/usr/local/etc里面找到,里面有很詳細(xì)的注釋,我就不多說(shuō)了。 下載網(wǎng)頁(yè)的時(shí)候比較麻煩的事情是,有的網(wǎng)頁(yè)被同時(shí)指向了很多遍,那么為了避免多次下載,我們使用 wget -nc -r -k?http://www.ctan.org/tex-archive/macros/latex/ 可以避免這件事情。為了不被有的連接指向非http://www.ctan.org/tex-archive/macros/latex/內(nèi)層目錄,我們還應(yīng)該加上 wget -nc -np -r -k?http://www.ctan.org/tex-archive/macros/latex/ 避免下載非該目錄里面的文件,這也避免了到不同的host上面去。當(dāng)然,如果你希望有這個(gè)功能,在多個(gè)host之間跳來(lái)跳去的下載,可以使用 wget -nc -np -H -r -k?http://www.ctan.org/tex-archive/macros/latex/ 使得可以在多個(gè)host之間span,同時(shí)-I和-X可以使得我們僅僅跟蹤某些目錄或者不跟蹤某些目錄。如果某些HTML里面你需要的東西不是由<a>這種東西作出來(lái)的,你就得使用–follow-tags和–ignore-tags了。 嘿,我有個(gè)文件里面都是連接,怎么辦?要是不是html你只需要 wget -i your.file 如果是,那也不繁 wget -F -i your.file Vi指令大全—-編輯文件 進(jìn)入vi的命令 vi filename: 打開或新建文件,并將光標(biāo)置于第一行首 vi +n filename: 打開文件,并將光標(biāo)置于第n行首 vi + filename: 打開文件,并將光標(biāo)置于最后一行首 vi +/pattern filename: 打開文件,并將光標(biāo)置于第一個(gè)與pattern匹配的串處 vi -r filename: 在上次正用vi編輯時(shí)發(fā)生系統(tǒng)崩潰,恢復(fù)filename vi filename….filename: 打開多個(gè)文件,依次進(jìn)行編輯 移動(dòng)光標(biāo)類命令 h: 光標(biāo)左移一個(gè)字符 l: 光標(biāo)右移一個(gè)字符 space: 光標(biāo)右移一個(gè)字符 Backspace: 光標(biāo)左移一個(gè)字符 k或Ctrl+p: 光標(biāo)上移一行 j或Ctrl+n: 光標(biāo)下移一行 Enter: 光標(biāo)下移一行 w或W : 光標(biāo)右移一個(gè)字至字首 b或B : 光標(biāo)左移一個(gè)字至字首 e或E : 光標(biāo)右移一個(gè)字至字尾 ): 光標(biāo)移至句尾 (: 光標(biāo)移至句首 }: 光標(biāo)移至段落開頭 {: 光標(biāo)移至段落結(jié)尾 nG: 光標(biāo)移至第n行首 n+: 光標(biāo)下移n行 n-: 光標(biāo)上移n行 n$: 光標(biāo)移至第n行尾 H: 光標(biāo)移至屏幕頂行 M: 光標(biāo)移至屏幕中間行 L: 光標(biāo)移至屏幕最后行 0: 光標(biāo)移至當(dāng)前行首 $: 光標(biāo)移至當(dāng)前行尾 屏幕翻滾類命令 Ctrl+u: 向文件首翻半屏 Ctrl+d: 向文件尾翻半屏 Ctrl+f: 向文件尾翻一屏 Ctrl+b: 向文件首翻一屏 nz: 將第n行滾至屏幕頂部,不指定n時(shí)將當(dāng)前行滾至屏幕頂部。 插入文本類命令 i: 在光標(biāo)前 I: 在當(dāng)前行首 a: 光標(biāo)后 A: 在當(dāng)前行尾 o: 在當(dāng)前行之下新開一行 O: 在當(dāng)前行之上新開一行 r: 替換當(dāng)前字符 R: 替換當(dāng)前字符及其后的字符,直至按ESC鍵 s: 從當(dāng)前光標(biāo)位置處開始,以輸入的文本替代指定數(shù)目的字符 S: 刪除指定數(shù)目的行,并以所輸入文本代替之 ncw或nCW: 修改指定數(shù)目的字 nCC: 修改指定數(shù)目的行 刪除命令 ndw或ndW: 刪除光標(biāo)處開始及其后的n-1個(gè)字 do: 刪至行首 d$: 刪至行尾 ndd: 刪除當(dāng)前行及其后n-1行 x或X: 刪除一個(gè)字符,x刪除光標(biāo)后的,而X刪除光標(biāo)前的 Ctrl+u: 刪除輸入方式下所輸入的文本 搜索及替換命令 /pattern: 從光標(biāo)開始處向文件尾搜索pattern ?pattern: 從光標(biāo)開始處向文件首搜索pattern n: 在同一方向重復(fù)上一次搜索命令 N: 在反方向上重復(fù)上一次搜索命令 :s/p1/p2/g: 將當(dāng)前行中所有p1均用p2替代 :n1,n2s/p1/p2/g: 將第n1至n2行中所有p1均用p2替代 :g/p1/s//p2/g: 將文件中所有p1均用p2替換 選項(xiàng)設(shè)置 all: 列出所有選項(xiàng)設(shè)置情況 term: 設(shè)置終端類型 ignorance: 在搜索中忽略大小寫 list: 顯示制表位(Ctrl+I)和行尾標(biāo)志($) number: 顯示行號(hào) report: 顯示由面向行的命令修改過(guò)的數(shù)目 terse: 顯示簡(jiǎn)短的警告信息 warn: 在轉(zhuǎn)到別的文件時(shí)若沒保存當(dāng)前文件則顯示NO write信息 nomagic: 允許在搜索模式中,使用前面不帶“”的特殊字符 nowrapscan: 禁止vi在搜索到達(dá)文件兩端時(shí),又從另一端開始 mesg: 允許vi顯示其他用戶用write寫到自己終端上的信息 最后行方式命令 :n1,n2 co n3: 將n1行到n2行之間的內(nèi)容拷貝到第n3行下 :n1,n2 m n3:將n1行到n2行之間的內(nèi)容移至到第n3行下 :n1,n2 d: 將 n1行到n2行之間的內(nèi)容刪除 :w: 保存當(dāng)前文件 :e filename: 打開文件filename進(jìn)行編輯 :x: 保存當(dāng)前文件并退出 :q: 退出vi :q!: 不保存文件并退出vi :!command: 執(zhí)行shell命令command :n1,n2 w!command: 將文件中n1行至n2行的內(nèi)容作為command的輸入并執(zhí)行之, 若不指定n1,n2,則表示將整個(gè)文件內(nèi)容作為command的輸入 :r!command: 將命令command的輸出結(jié)果放到當(dāng)前行 寄存器操作 “?nyy: 將當(dāng)前行及其下n行的內(nèi)容保存到寄存器?中,其中?為一個(gè)字母,n為一個(gè)數(shù)字 “?nyw: 將當(dāng)前行及其下n個(gè)字保存到寄存器?中,其中?為一個(gè)字母,n為一個(gè)數(shù)字 “?nyl: 將當(dāng)前行及其下n個(gè)字符保存到寄存器?中,其中?為一個(gè)字母,n為一個(gè)數(shù)字 “?p: 取出寄存器?中的內(nèi)容并將其放到光標(biāo)位置處。這里?可以是一個(gè)字母,也可以是一個(gè)數(shù)字 ndd: 將當(dāng)前行及其下共n行文本刪除,并將所刪內(nèi)容放到1號(hào)刪除寄存器中 ? |
轉(zhuǎn)載于:https://www.cnblogs.com/y0umer/archive/2011/03/26/2809593.html
總結(jié)
以上是生活随笔為你收集整理的shell 常用命令的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于电脑的几十个单词及其缩写
- 下一篇: API(乱七八糟)