首先必須強調,Linux命令記憶的最佳方法就是在使用中記憶,伴隨著使用場景的記憶是非常深刻且難以磨滅的,在使用過一段時間之后,大部分的常用命令都會成為你未來十年乃至更長時間都不會丟掉的記憶。如果沒有特別強烈的要在短時間掌握命令行使用的需求,主要堅持使用一段時間就能自然而然的掌握大多數命令。
成都創新互聯是一家專注于成都網站制作、成都做網站與策劃設計,臨安網站建設哪家好?成都創新互聯做網站,專注于網站建設十載,網設計領域的專業建站公司;建站業務涵蓋:臨安等地區。臨安做網站價格咨詢:18982081108
假設你必須在短時間內掌握所有Linux命令,那該怎么辦?我沒有遇到過這種情況,但是可以提供一些思路。
第一步:使用man
這是最快速、最權威的學習方式。但是考慮到英語水平較差的同學,這又是一個非常痛苦的學習方式。不過別擔心,這里用man只是讓你對命令和他們的英文注解進行一個簡單的了解,無需記憶,只要稍稍有點印象就可以了。
這一時期可以參考這個知乎問題下的回答:Linux中常用的命令都是哪些單詞的縮寫?
記憶所有命令的拼寫應該不難吧?
第二步:使用中文資料(英語不好的話)
既然英語不好,又沒有時間練習,那就找一份中文資料來瘋狂背誦吧。能夠在中國教育體制下上完大學,背誦的技能應該都不會差。
第三步:中英文對照
英文大略看過之后,就將其與自己記憶的中文資料進行比對,逐漸建立原文和翻譯之間的聯系。如果比較成功的話,你可以做到一個單詞都不認識,但是明白這句話在說什么。
這樣,你至少可以清楚地了解你拼寫出的每一個命令到底怎么用了。
第四步:補充自己的缺陷
從描述來看,你需要補全的至少有兩個方面:
1.練習
2.英語
這兩個非常重要,你雖然可以在缺少這兩項技能的情況下繼續從事IT行業,但是你的麻煩會非常多。比如別人一個man的事,你還需要找中文資料這樣子。
在Unix/Linux下,高效工作方式不是操作圖形頁面,而是命令行操作,命令行意味著更容易自動化。使用過Linux系統的朋友應該都知道它的命令行強大之處。話說回來了,以下這些命令使用技巧你又知道多少呢?
1、Vim自動添加注釋及智能換行
# vi ~/.vimrc set autoindentset tabstop=4set shiftwidth=4function AddTitle()call setline(1,"#!/bin/bash")call append(1,"#====================================================")call append(2,"# Author: lizhenliang")call append(3,"# Create Date: " . strftime("%Y-%m-%d"))call append(4,"# Description: ")call append(5,"#====================================================")endfmap F4 :call AddTitle()cr
打開文件后,按F4就會自動添加注釋,省了不少時間:
2、查找并刪除/data這個目錄7天前創建的文件
# find /data -ctime +7 -exec rm -rf {} \;# find /data -ctime +7 | xargs rm -rf
3、tar命令壓縮排除某個目錄
# tar zcvf data.tar.gz /data --exclude=tmp #--exclude參數為不包含某個目錄或文件,后面也可以跟多個
4、查看tar包存檔文件,不解壓
# tar tf data.tar.gz #t是列出存檔文件目錄,f是指定存檔文件
5、使用stat命令查看一個文件的屬性
訪問時間(Access)、修改時間(modify)、狀態改變時間(Change)stat index.phpAccess: 2018-05-10 02:37:44.169014602 -0500Modify: 2018-05-09 10:53:14.395999032 -0400Change: 2018-05-09 10:53:38.855999002 -0400
6、批量解壓tar.gz
方法1:# find . -name "*.tar.gz" -exec tar zxf {} \;方法2:# for tar in *.tar.gz; do tar zxvf $tar; done方法3:# ls *.tar.gz | xargs -i tar zxvf {}
7、篩除出文件中的注釋和空格
方法1:# grep -v "^#" httpd.conf |grep -v "^$"方法2:# sed -e ‘/^$/d’ -e ‘/^#/d’ httpd.conf http.conf或者# sed -e '/^#/d;/^$/d' #-e 執行多條sed命令方法3:# awk '/^[^#]/|/"^$"' httpd.conf 或者# awk '!/^#|^$/' httpd.conf
8、篩選/etc/passwd文件中所有的用戶
方法1:# cat /etc/passwd |cut -d: -f1方法2:# awk -F ":" '{print $1}' /etc/passwd
9、iptables網站跳轉
先開啟路由轉發:echo "1" /proc/sys/net/ipv4/ip_forward #臨時生效內網訪問外網(SNAT):iptables –t nat -A POSTROUTING -s [內網IP或網段] -j SNAT --to [公網IP]#內網服務器要指向防火墻內網IP為網關公網訪問內網(DNAT)(公網端口映射內網端口):iptables –t nat -A PREROUTING -d [對外IP] -p tcp --dport [對外端口] -j DNAT --to [內網IP:內網端口]#內網服務器要配置防火墻內網IP為網關,否則數據包回不來。另外,這里不用配置SNAT,因為系統服務會根據數據包來源再返回去。
10、iptables將本機80端口轉發到本地8080端口
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
11、find命令查找文件并復制到/opt目錄
方法1:# find /etc -name httpd.conf -exec cp -rf {} /opt/ \;: #-exec執行后面命令,{}代表前面輸出的結果,\;結束命令方法2:# find /etc -name httpd.conf |xargs -i cp {} /opt #-i表示輸出的結果由{}代替
12、查看根目錄下大于1G的文件
# find / -size +1024M 默認單位是b,可以使用其他單位如,C、K、M
13、查看服務器IP連接數
# netstat -tun | awk '{print $5}' | cut -d: -f1 |sort | uniq -c | sort -n -tun:-tu是顯示tcp和udp連接,n是以IP地址顯示cut -d:-f1:cut是一個選擇性顯示一行的內容命令,-d指定:為分隔符,-f1顯示分隔符后的第一個字段。uniq -c:報告或刪除文中的重復行,-c在輸出行前面加上出現的次數sort -n:根據不同類型進行排序,默認排序是升序,-r參數改為降序,-n是根據數值的大小進行排序
14、插入一行到391行,包括特殊符號"/"
# sed -i "391 s/^/AddType application\/x-httpd-php .php .html/" httpd.conf
15、列出nginx日志訪問最多的10個IP
方法1:# awk '{print $1}' access.log |sort |uniq -c|sort -nr |head -n 10sort :排序uniq -c:合并重復行,并記錄重復次數sort -nr :按照數字進行降序排序方法2:# awk '{a[$1]++}END{for(v in a)print v,a[v] |"sort -k2 -nr |head -10"}' access.log
16、顯示nginx日志一天訪問量最多的前10位IP
# awk '$4="[16/May/2017:00:00:01" $4="[16/May/2017:23:59:59"' access_test.log |sort |uniq -c |sort-nr |head -n 10# awk '$4="[16/Oct/2017:00:00:01" $4="[16/Oct/2017:23:59:59"{a[$1]++}END{for(i in a){print a[i],i|"sort -k1 -nr |head -n 10"}}' access.log
17、獲取當前時間前一分鐘日志訪問量
# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"` ; awk -vd=$date '$0~d{c++}END{print c}' access.log# date=`date +%d/%b/%Y:%H:%M --date="-1 minute"`; awk -vd=$date '$4="["d":00" $4="["d":59"{c++}END{print c}' access.log # grep `date +%d/%b/%Y:%H:%M --date="-1 minute"` access.log |awk 'END{print NR}'# start_time=`date +%d/%b/%Y:%H:%M:%S --date="-5 minute"`;end_time=`date +%d/%b/%Y:%H:%M:%S`;awk -vstart_time="[$start_time" -vend_time="[$end_time" '$4=start_time $4=end_time{count++}END{print count}' access.log
18、找出1-255之間的整數
方法1:# ifconfig |grep -o '[0-9]\+' #+號匹配前一個字符一次或多次方法2:# ifconfig |egrep -o '\([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\'
19、找出IP地址
# ifconfig |grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' #-o只顯示匹配字符
20、給文檔增加開頭和結尾說明信息
# awk ‘BEGIN{print "開頭顯示信息"}{print $1,$NF} END{print "結尾顯示信息"}’/etc/passwd# awk 'BEGIN{printf " date ip\n------------------\n"} {print $3,$4} END{printf "------------------\nend...\n"}' /var/log/messages date ip------------------03:13:01 localhost10:51:45 localhost------------------end...
21、查看網絡狀態命令
# netstat -antp #查看所有網絡連接# netstat -lntp #只查看監聽的端口信息# lsof -p pid #查看進程打開的文件句柄# lsof -i:80 #查看端口被哪個進程占用
22、生成8位隨機字符串
方法1:# echo $RANDOM |md5sum |cut -c 1-8方法2:# openssl rand -base64 4方法3:# cat /proc/sys/kernel/random/uuid | cut -c 1-8
23、while死循環
while true; do #條件精確等于真,也可以直接用條件[ "1" == "1" ],條件一直為真ping -c 2
24.awk格式化輸出
將文本列進行左對齊或右對齊。
左對齊:# awk '{printf "%-15s %-10s %-20s\n",$1,$2,$3}' test.txt右對齊:# awk '{printf "%15s %10s %20s\n",$1,$2,$3}' test.txt
25.整數運算保留小數點
方法1:# echo 'scale=2; 10/3;'|bc #scale參數代表取小數點位數方法2:# awk BEGIN'{printf "%.2f\n",10/3}'
26.數字求和
# cat a.txt10235356方法1:#!/bin/bashwhile read num;dosum=`expr $sum + $num`done a.txtecho $sum方法2:# cat a.txt |awk '{sum+=$1}END{print sum}'
27、判斷是否為數字(字符串判斷也如此)
# [[ $num =~ ^[0-9]+$ ]] echo yes || echo no #[[]]比[]更加通用,支持模式匹配=~和字符串比較使用通配符`^ $:從開始到結束是數字才滿足條件=~:一個操作符,表示左邊是否滿足右邊(作為一個模式)正則表達式
28、刪除換行符并將空格替換別的字符
# cat a.txt |xargs echo -n |sed 's/[ ]/|/g' #-n 不換行# cat a.txt |tr -d '\n' #刪除換行符
29、查看文本中20至30行內容(總共100行)
方法1:# awk '{if(NR 20 NR 31) print $0}' test.txt方法2:# sed -n '20,30p' test.txt 方法3:# head -30 test.txt |tail
30、文本中兩列位置替換
# cat a.txt60.35.1.15 awk '{print $2"\t"$1}' a.txt
對于初學者來說,學習Linux并不是簡單的事情,想要完全掌握好Linux系統,合適的方法和技巧同樣重要,這里我為大家總結了幾點Linux學習方法及技巧,希望對你有所幫助。
1、學習使用Linux命令:隨著Linux桌面的發展,命令行在系統中依然是非常有效的、方便的,而Linux系統最主要的就是熟悉使用命令,Linux命令有許多強大的功能,可以完成非常復雜的操作。
2、選擇合適的Linux書籍:工具書對于學習而言是非常重要的,一本合適的書籍可以起到非常好的引導作用,選擇適合自己的書籍,堅持看下去,可以獲得滿意的收獲。
3、選擇適合你的Linux版本:Linux發行版本有很多,在國內也有十幾個版本,我們需要根據自身的需求,選擇合適的Linux版本,在這里推薦大家使用Contos。
4、養成良好的工作習慣:Linux桌面對于系統是一個應用程序,從效率以及易用性來說都沒有shell好用,雖然命令行學習起來效率非常慢,但是真正的精通之后就會有不一樣的收獲。
5、善于動手實戰:想要更好的增強自身的Linux技能,勤學苦練是非常重要的,準備一臺電腦,安裝一個適合自己的版本,通過動手來完成實戰項目,可以更好的提升自己的能力和水平。
linux常用命令如下:
1、查看內核版本:uname -a。
2、控制臺-》圖形界面:init 5或者startx。
3、圖形界面-》控制臺: init3或者直接注銷。
4、如何查看ip地址:ifconfig。
5、配置ip:ifconfig eth0 ip地址。
6、重啟:reboot 或者 shutdown -r now。
7、普通用戶切換到系統用戶:su。
8、注銷用戶指令:logout。
linux的學習技巧:
如果你想系統的學習Linux,你必需清楚的認識到這一點。如果你真正想系統的學習linux,想用Linux有所作為,那么請忘記Windows的思維方式,思想性的轉變比暫時性的技術提高更有用, 而思想上的改變往往是受到我們行動所影響的,有不懂的問題就自己思考,查資料, 實在不會再去找別人的電腦去查,這樣就加深了我每次對問題的理解,慢慢感受和習慣Linux的操作方式。
進入Linux系統:
必須要輸入用戶的賬號,在系統安裝過程中可以創建以下兩種帳號:
1.root--超級用戶帳號(系統管理員),使用這個帳號可以在系統中做任何事情。
2.普通用戶--這個帳號供普通用戶使用,可以進行有限的操作。
一般的Linux使用者均為普通用戶,而系統管理員一般使用超級用戶帳號完成一些系統管理的工作。如果只需要完成一些由普通帳號就能完成的任務,建議不要使用超級用戶帳號,以免無意中破壞系統。影響系統的正常運行。
用戶登錄分兩步:第一步,輸入用戶的登錄名,系統根據該登錄名識別用戶;第二步,輸入用戶的口令,該口令是用戶自己設置的一個字符串,對其他用戶是保密的,是在登錄時系統用來辨別真假用戶的關鍵字。
當用戶正確地輸入用戶名和口令后,就能合法地進入系統。屏幕顯示:
[root@loclhost /root] # 這時就可以對系統做各種操作了。注意超級用戶的提示符是“#”,其他用戶的提示符是“$”。 修改口令
為了更好的保護用戶帳號的安全,Linux允許用戶隨時修改自己的口令,修改口令的命令是passwd,它將提示用戶輸入舊口令和新口令,之后還要求用戶再次確認新口令,以避免用戶無意中按錯鍵。如果用戶忘記了口令,可以向系統管理員申請為自己重新設置一個。 虛擬控制臺
Linux是一個真正的多用戶操作系統,它可以同時接受多個用戶登錄。Linux還允許一個用戶進行多次登錄,這是因為Linux和UNIX一樣,提供了虛擬控制臺的訪問方式,允許用戶在同一時間從控制臺進行多次登錄。虛擬控制臺的選擇可以通過按下Alt鍵和一個功能鍵來實現,通常使用F1-F6例如,用戶登錄后,按一下Alt-F2鍵,用戶又可以看到"login:"提示符,說明用戶看到了第二個虛擬控制臺。然后只需按Alt-F1鍵,就可以回到第一個虛擬控制臺。 一個新安裝的Linux系統默認允許用戶使用Alt-F1到Alt-F6鍵來訪問前六個虛擬控制臺。虛擬控制臺可使用戶同時在多個控制臺上工作,真正體現Linux系統多用戶的特性。用戶可以在某一虛擬控制臺上進行的工作尚未結束時,切換到另一虛擬控制臺開始另一項工作。 退出系統
不論是超級用戶,還是普通用戶,需要退出系統時,在shell提示符下,鍵入exit命令即可。cp命令
該命令的功能是將給出的文件或目錄拷貝到另一文件或目錄中,同MSDOS下的copy命令一樣,功能十分強大。 語法: cp [選項] 源文件或目錄 目標文件或目錄 說明:該命令把指定的源文件復制到目標文件或把多個源文件復制到目標目錄中。 該命令的各選項含義如下: - a 該選項通常在拷貝目錄時使用。它保留鏈接、文件屬性,并遞歸地拷貝目錄,其作用等于dpR選項的組合。 - d 拷貝時保留鏈接。 - f 刪除已經存在的目標文件而不提示。 - i 和f選項相反,在覆蓋目標文件之前將給出提示要求用戶確認?;卮饄時目標文件將被覆蓋,是交互式拷貝。 - p 此時cp除復制源文件的內容外,還將把其修改時間和訪問權限也復制到新文件中。 - r 若給出的源文件是一目錄文件,此時cp將遞歸復制該目錄下所有的子目錄和文件。此時目標文件必須為一個目錄名。 - l 不作拷貝,只是鏈接文件。 需要說明的是,為防止用戶在不經意的情況下用cp命令破壞另一個文件,如用戶指定的目標文件名已存在,用cp命令拷貝文件后,這個文件就會被新源文件覆蓋,因此,建議用戶在使用cp命令拷貝文件時,最好使用i選項。mv命令 用戶可以使用mv命令來為文件或目錄改名或將文件由一個目錄移入另一個目錄中。該命令如同MSDOS下的ren和move的組合。 語法:mv [選項] 源文件或目錄 目標文件或目錄 說明:視mv命令中第二個參數類型的不同(是目標文件還是目標目錄),mv命令將文件重命名或將其移至一個新的目錄中。當第二個參數類型是文件時,mv命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標文件名。當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv命令將各參數指定的源文件均移至目標目錄中。在跨文件系統移動文件時,mv先拷貝,再將原有文件刪除,而鏈至該文件的鏈接也將丟失。 命令中各選項的含義為: - I 交互方式操作。如果mv操作將導致對已存在的目標文件的覆蓋,此時系統詢問是否重寫,要求用戶回答y或n,這樣可以避免誤覆蓋文件。 - f 禁止交互操作。在mv操作要覆蓋某已有的目標文件時不給任何指示,指定此選項后,i選項將不再起作用。 如果所給目標文件(不是目錄)已存在,此時該文件的內容將被新文件覆蓋。為防止用戶用mv命令破壞另一個文件,使用mv命令移動文件時,最好使用i選項。 rm命令 用戶可以用rm命令刪除不需要的文件。該命令的功能為刪除一個目錄中的一個或多個文件或目錄,它也可以將某個目錄及其下的所有文件及子目錄均刪除。對于鏈接文件,只是斷開了鏈接,原文件保持不變。 rm命令的一般形式為: rm [選項] 文件… 如果沒有使用- r選項,則rm不會刪除目錄。 該命令的各選項含義如下: - f 忽略不存在的文件,從不給出提示。 - r 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除。 - i 進行交互式刪除。 使用rm命令要小心。因為一旦文件被刪除,它是不能被恢復的。了防止這種情況的發生,可以使用i選項來逐個確認要刪除的文件。如果用戶輸入y,文件將被刪除。如果輸入任何其他東西,文件則不會刪除。mkdir命令 功能:創建一個目錄(類似MSDOS下的md命令)。 語法:mkdir [選項] dir-name 說明:該命令創建由dir-name命名的目錄。要求創建目錄的用戶在當前目錄中(dir-name的父目錄中)具有寫權限,并且dirname不能是當前目錄中已有的目錄或 文件名稱。 命令中各選項的含義為: - m 對新建目錄設置存取權限。也可以用chmod命令設置。 - p 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在, 加上此選項后, 系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄。 rmdir 命令 功能:刪除空目錄。 語法:rmdir [選項] dir-name 說明:dir-name表示目錄名。該命令從一個目錄中刪除一個或多個子目錄項。需要 特別注意的是,一個目錄被刪除之前必須是空的。rm - r dir命令可代替 rmdir,但是有危險性。刪除某目錄時也必須具有對父目錄的寫權限。 命令中各選項的含義為: - p 遞歸刪除目錄dirname,當子目錄刪除后其父目錄為空時,也一同被刪除。如果整個路徑被刪除或者由于某種原因保留部分路徑,則系統在標準輸出上顯示相應 的信息。 cd 命令 功能:改變工作目錄。 語法:cd [directory] 說明:該命令將當前目錄改變至directory所指定的目錄。若沒有指定directory, 則回到用戶的主目錄。為了改變到指定目錄,用戶必須擁有對指定目錄的執行和讀 權限。 該命令可以使用通配符(通配符含義請參見第十章)。
pwd 命令 在Linux層次目錄結構中,用戶可以在被授權的任意目錄下利用mkdir命令創建新目錄,也可以利用cd命令從一個目錄轉換到另一個目錄。然而,沒有提示符來告知用 戶目前處于哪一個目錄中。要想知道當前所處的目錄,可以使用pwd命令,該命令顯示整個路徑名。 語法:pwd 說明:此命令顯示出當前工作目錄的絕對路徑。 ls 命令 ls是英文單詞list的簡寫,其功能為列出目錄的內容。這是用戶最常用的一個命令之一,因為用戶需要不時地查看某個目錄的內容。該命令類似于DOS下的dir命令。 語法:ls [選項] [目錄或是文件] 對于每個目錄,該命令將列出其中的所有子目錄與文件。對于每個文件,ls將輸出 其文件名以及所要求的其他信息。默認情況下,輸出條目按字母順序排序。當未給出目錄名或是文件名時,就顯示當前目錄的信息。 命令中各選項的含義如下: - a 顯示指定目錄下所有子目錄與文件,包括隱藏文件。 - A 顯示指定目錄下所有子目錄與文件,包括隱藏文件。但不列出“.”和 “..”。 - b 對文件名中的不可顯示字符用八進制逃逸字符顯示。 - c 按文件的修改時間排序。 - C 分成多列顯示各項。 - d 如果參數是目錄,只顯示其名稱而不顯示其下的各文件。往往與l選項一起使 用,以得到目錄的詳細信息。 - f 不排序。該選項將使lts選項失效,并使aU選項有效。 - F 在目錄名后面標記“/”,可執行文件后面標記“*”,符號鏈接后面標記 “@”,管道(或FIFO)后面標記“|”,socket文件后面標記“=”。 - i 在輸出的第一列顯示文件的i節點號。 - l 以長格式來顯示文件的詳細信息。這個選項最常用。 每行列出的信息依次是: 文件類型與權限 鏈接數 文件屬主 文件屬組 文件大小 建立或最近修改的時間 名字 對于符號鏈接文件,顯示的文件名之后有“—〉”和引用文件路徑名。 對于設備文件,其“文件大小”字段顯示主、次設備號,而不是文件大小。 目錄中的總塊數顯示在長格式列表的開頭,其中包含間接塊。 - L 若指定的名稱為一個符號鏈接文件,則顯示鏈接所指向的文件。 - m 輸出按字符流格式,文件跨頁顯示,以逗號分開。 - n 輸出格式與l選項相同,只不過在輸出中文件屬主和屬組是用相應的UID號和 GID號來表示,而不是實際的名稱。 - o 與l選項相同,只是不顯示擁有者信息。 - p 在目錄后面加一個“/”。 - q 將文件名中的不可顯示字符用“?”代替。 - r 按字母逆序或最早優先的順序顯示輸出結果。 - R 遞歸式地顯示指定目錄的各個子目錄中的文件。 - s 給出每個目錄項所用的塊數,包括間接塊。 - t 顯示時按修改時間(最近優先)而不是按名字排序。若文件修改時間相同,則 按字典順序。修改時間取決于是否使用了c或u選頂。缺省的時間標記是最后一次修 改時間。 - u 顯示時按文件上次存取的時間(最近優先)而不是按名字排序。即將-t的時間 標記修改為最后一次訪問的時間。 - x 按行顯示出各排序項的信息。 用ls - l命令顯示的信息中,開頭是由10個字符構成的字符串,其中第一個字符表示文件類型,它可以是下述類型之一: - 普通文件 d 目錄 l 符號鏈接 b 塊設備文件 c 字符設備文件 后面的9個字符表示文件的訪問權限,分為3組,每組3位。 第一組表示文件屬主的權限,第二組表示同組用戶的權限,第三組表示其他用戶的權限。每一組的三個字 符分別表示對文件的讀、寫和執行權限。 各權限如下所示: r 讀 w 寫 x 執行。對于目錄,表示進入權限。 s 當文件被執行時,把該文件的UID或GID賦予執行進程的UID(用戶ID)或GID(組 ID)。 t 設置標志位(留在內存,不被換出)。如果該文件是目錄,在該目錄中的文件只能被超級用戶、目錄擁有者或文件屬主刪除。如果它是可執行文件,在該文件執行 后,指向其正文段的指針仍留在內存。這樣再次執行它時,系統就能更快地裝入該文件。Linux文本處理命令
sort命令 sort命令的功能是對文件中的各行進行排序。sort命令有許多非常實用的選項,這些選項最初是用來對數據庫格式的文件內容進行各種排序操作的。實際上,sort命令可以被認為是一個非常強大的數據管理工具,用來管理內容類似數據庫記錄的文件。 Sort命令將逐行對文件中的內容進行排序,如果兩行的首字符相同,該命令將繼續比較這兩行的下一字符,如果還相同,將繼續進行比較。 語法: sort [選項] 文件 說明:sort命令對指定文件中所有的行進行排序,并將結果顯示在標準輸出上。如不指定輸入文件或使用“- ”,則表示排序內容來自標準輸入。 sort排序是根據從輸入行抽取的一個或多個關鍵字進行比較來完成的。排序關鍵字定義了用來排序的最小的字符序列。缺省情況下以整行為關鍵字按ASCII字符順序進行排序。 改變缺省設置的選項主要有: - m 若給定文件已排好序,合并文件。 - c 檢查給定文件是否已排好序,如果它們沒有都排好序,則打印一個出錯信息,并以狀態值1退出。 - u 對排序后認為相同的行只留其中一行。 - o 輸出文件 將排序輸出寫到輸出文件中而不是標準輸出,如果輸出文件是輸入文件之一,sort先將該文件的內容寫入一個臨時文件,然后再排序和寫輸出結果。 改變缺省排序規則的選項主要有: - d 按字典順序排序,比較時僅字母、數字、空格和制表符有意義。 - f 將小寫字母與大寫字母同等對待。 - I 忽略非打印字符。 - M 作為月份比較:“JAN”“FEB” - r 按逆序輸出排序結果。 +posl - pos2 指定一個或幾個字段作為排序關鍵字,字段位置從posl開始,到pos2為止(包括posl,不包括pos2)。如不指定pos2,則關鍵字為從posl到行尾。字段和字符的位置從0開始。 - b 在每行中尋找排序關鍵字時忽略前導的空白(空格和制表符)。 - t separator 指定字符separator作為字段分隔符。 uniq命令 文件經過處理后在它的輸出文件中可能會出現重復的行。例如,使用cat命令將兩個文件合并后,再使用sort命令進行排序,就可能出現重復行。這時可以使用uniq命令將這些重復行從輸出文件中刪除,只留下每條記錄的唯一樣本。 語法: uniq [選項] 文件 說明:這個命令讀取輸入文件,并比較相鄰的行。在正常情況下,第二個及以后更多個重復行將被刪去,行比較是根據所用字符集的排序序列進行的。該命令加工后的結果寫到輸出文件中。輸入文件和輸出文件必須不同。如果輸入文件用“- ”表示,則從標準輸入讀取。 該命令各選項含義如下: - c 顯示輸出中,在每行行首加上本行在文件中出現的次數。它可取代- u和- d選項。 - d 只顯示重復行。 - u 只顯示文件中不重復的各行。 - n 前n個字段與每個字段前的空白一起被忽略。一個字段是一個非空格、非制表符的字符串,彼此由制表符和空格隔開(字段從0開始編號)。 +n 前n個字符被忽略,之前的字符被跳過(字符從0開始編號)。 - f n 與- n相同,這里n是字段數。 - s n 與+n相同,這里n是字符數。tar命令 tar可以為文件和目錄創建檔案。利用tar,用戶可以為某一特定文件創建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。tar最初被用來在磁帶上創建檔案,現在,用戶可以在任何設備上創建檔案,如軟盤。利用tar命令,可以把一大堆的文件和目錄全部打包成一個文件,這對于備份文件或將幾個文件組合成為一個文件以便于網絡傳輸是非常有用的。Linux上的tar是GNU版本的。 語法:tar [主選項+輔選項] 文件或者目錄 使用該命令時,主選項是必須要有的,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。 主選項: c 創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。 r 把要存檔的文件追加到檔案文件的未尾。例如用戶已經作好備份文件,又發現還有一個目錄或是一些文件忘記備份了,這時可以使用該選項,將忘記的目錄或文件追加到備份文件中。 t 列出檔案文件的內容,查看已經備份了哪些文件。 u 更新文件。就是說,用新增的文件取代原備份文件,如果在備份文件中找不到要更新的文件,則把它追加到備份文件的最后。 x 從檔案文件中釋放文件。 輔助選項: b 該選項是為磁帶機設定的。其后跟一數字,用來說明區塊的大小,系統預設值為20(20*512 bytes)。 f 使用檔案文件或設備,這個選項通常是必選的。 k 保存已經存在的文件。例如我們把某個文件還原,在還原的過程中,遇到相同的文件,不會進行覆蓋。 m 在還原文件時,把所有文件的修改時間設定為現在。 M 創建多卷的檔案文件,以便在幾個磁盤中存放。 v 詳細報告tar處理的文件信息。如無此選項,tar不報告文件信息。 w 每一步都要求確認。 z 用gzip來壓縮/解壓縮文件,加上該選項后可以將檔案文件進行壓縮,但還原時也一定要使用該選項進行解壓縮。 gzip命令 減少文件大小有兩個明顯的好處,一是可以減少存儲空間,二是通過網絡傳輸文件時,可以減少傳輸的時間。gzip是在Linux系統中經常使用的一個對文件進行壓縮和解壓縮的命令,既方便又好用。 語法:gzip [選項] 壓縮(解壓縮)的文件名 各選項的含義: -c 將輸出寫到標準輸出上,并保留原有文件。 -d 將壓縮文件解壓。 -l 對每個壓縮文件,顯示下列字段: 壓縮文件的大小 未壓縮文件的大小 壓縮比 未壓縮文件的名字 -r 遞歸式地查找指定目錄并壓縮其中的所有文件或者是解壓縮。 -t 測試,檢查壓縮文件是否完整。 -v 對每一個壓縮和解壓的文件,顯示文件名和壓縮比。 -num 用指定的數字num調整壓縮的速度,-1或--fast表示最快壓縮方法(低壓縮比),-9或--best表示最慢壓縮方法(高壓縮比)。系統缺省值為6。 unzip命令 用MS Windows下的壓縮軟件winzip壓縮的文件如何在Linux系統下展開呢?可以用unzip命令,該命令用于解擴展名為.zip的壓縮文件。 語法:unzip [選項] 壓縮文件名.zip 各選項的含義分別為: -x 文件列表 解壓縮文件,但不包括指定的file文件。 -v 查看壓縮文件目錄,但不解壓。 -t 測試文件有無損壞,但不解壓。 -d 目錄 把壓縮文件解到指定目錄下。 -z 只顯示壓縮文件的注解。 -n 不覆蓋已經存在的文件。 -o 覆蓋已存在的文件且不要求用戶確認。 -j 不重建文檔的目錄結構,把所有文件解壓到同一目錄下。
做做上機操作的題目就行了,打個簡單的比方:有一題讓你查看當前目錄下的隱藏文件 你就上機終端 輸入 ls -a ;還有掛載分區等等,多這樣做就記住了,關鍵是興趣
先學習常用的,再學習不常用的
網站標題:linux命令記憶技巧,怎么快速記住linux命令
分享網址:http://m.newbst.com/article34/phhise.html
成都網站建設公司_創新互聯,為您提供外貿建站、品牌網站制作、軟件開發、微信公眾號、定制網站、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯