Linux字符界面操作进阶
字符界面最重要的內容當然還是要記住各種命令了!下面我們來介紹一個字符界面下各種常用的操作命令。
常用的文本目錄操作命令:
ls顯示文件和目錄
touch創建一個空文件或改變文件的創建時間
cp復制文件或目錄
rm刪除文件或目錄
mv移動文件或目錄,文件或目錄改名
ln建立鏈接文件
pwd顯示當前工作目錄
cd切換目錄
find在文件系統只查找指定文件
mkdir創建目錄
rmdir刪除目錄
tree顯示目錄樹
文件打包和壓縮
把一組文件和目錄變成一個文件是文件打包,把打包好的文件在進行壓縮就是文件的壓縮。通常在給系統進行備份的時候都需要把文件進行打包,來方便我們把文件放到另一個文件夾甚至另一臺計算機。想要加快打包文件在互聯網上的傳輸可以將打包文件壓縮已減小文件的大小。
打包文件和壓縮文件都是文件和目錄的集合,打包文件的大小和文件目錄的集合一樣,壓縮文件的大小通常比文件和目錄的集合要小。
下面看看常用的打包壓縮命令:
命令說明
tar打解包命令,用于文件歸檔
gzip壓縮(解壓)文件或目錄,壓縮后的文件后綴為.gz
compress壓縮(解壓)文件或目錄,壓縮后的文件后綴為.Z
bzip2壓縮(解壓)文件或目錄,壓縮后的文件后綴為.bz2
Linux系統通常使用tar命令帶參數來調用各種壓縮和解壓程序,下面我們來舉幾個例子:
tar-cvf myball.tar mydir 將mydir打包成myball.tar
tar-tfmyball.tar 查看myball.tar
tar-xvf myball.tar 將myball.tar在當前目錄下解包
tar-zcvf myball.tar.gz mydir 將mydir打包,并壓縮為.gz格式
tar-ztf myball.tar.gz 查看myball.tar.gz文件
tar -zxvf myball.tar.gz 在當前目錄下解壓myball.tar.gz文件
tar -Zcvf myball.tar.Z mydir 將mydir打包,并壓縮為.Z格式
tar -Ztf myball.tar.Z 查看myball.tar.Z文件
tar-Zxvf myball.tar.Z 在當前目錄下解壓縮myball.tar.Z文件
tar-jcvf myball.tar.bz2 mydir 將mydir打包,并壓縮為.bz2格式
tar-jtf myball.tar.bz2 查看myball.tar.bz2文件
tar -jxvf myball.tar.bz2 在當前目錄下解壓縮myball.tar.bz2文件
常用文本文件操作命令:
cat、tac顯示文本文件內容
more、less分頁顯示文本文件內容
head,tail顯示文本文件頭幾行或后幾行
cut縱向切割指定的文本文件內容
paste縱向合并多個文本文件
grep通過關鍵字抽出文本文件指定的行
wc文本字符統計
sort按行給文本文件排序
uniq刪除文本文件的重復行
diff顯示兩個文本文件的不同
expand將制表符轉換為空格
unexpand將空格轉換為制表符
dos2unix 將DOS格式文件轉換為unix格式
unix2dos將unix格式文件轉換為DOS格式
iconv將文本文件從一個格式轉換為另一個格式
awkawk是處理文字的編程語言工具,它用來處理有格式的文本
sed流編輯器,在非交互模式下做字符替換。
tr字符替換
正則表達式:
正則表達式是用某種模式匹配一類字符串的一個公式,一般用來匹配和替換字符串。正則表達式對于初學者來講晦澀難懂,但是作為一個LINUX使用者學會使用這個則表達式是非常必要的,它能在特定情況下是工作效率提高。POSIX風格的正則表達式分為兩種,一種是基本的正則表達式的(Basic regular expression),另一種是擴展的正則表達式(Extended regular expression)。正則表達式由普通字符和元字符組成,普通字符是大小寫字母和數字組成,元字符具有特殊意義。下面介紹一下正則表達式的元字符。
符號描述舉例
^ 匹配首字符^x 匹配第一個字符是x的字符串
$ 匹配尾子符x$ 匹配最后一個字符是x的字符串
. 匹配任何一個字符.bc 匹配abc,bbc,cbc,dbc,ebc,fbc.....等等
? 匹配任何一個可選字符abc? 匹配ab,abc
* 匹配重復字符0次到多次abc* 匹配ab,abc,abcc,abccc,abcccc等等
+ 匹配重復字符1次到多次abc+ 匹配abc,abcc,abccc,abcccc等等
[...] 匹配之間的任意一個字符[abc] 匹配a或b或c
() 給正則表達式分組
/{n/} 重復n次abc/{3/} abccc
/{n,/} 重復最少n次abc/{3,/}abccc,abcccc,abccccc...等等
/{n,m/} 重復n到m次abc/{2,4/}abcc,abccc,abcccc
{n} 重復n次
{n,} 重復最少n次
{n,m} 重復n到m此
| 以或邏輯連續匹配多個
/ 轉義字符
下面來介紹一下可以在[ ]中使用的元字符
符號描述舉例
^ 非 [^xyz]不能使x或y或z
- 范圍符號(不可以使首尾字符) [a-zA-Z]二十六個英文字母
/ 轉移字符 // 表示/
以上是正則表達式的簡要介紹,如果還想要深入了解,可以購買相關書籍或者百度一下^_^。
下面我們來介紹一下linux的信息顯示命令:
Linux的信息顯示命令主要分為八類,分別是文件、系統、資源、分區、文件系統、用戶、進程、網絡。我們來分別介紹一下他們的命令,還是那句話如果要深入了解各個命令請您參看幫助文檔O(∩_∩)O。下面開始逐一介紹。
文件的信息顯示命令舉例:
Stat顯示文件的相關信息stat file1顯示file1的各種相關屬性信息
File顯示文件類型file file1 顯示file1的文件類型
系統的信息顯示命令舉例:
hostname 顯示系統的主機名
uname顯示操作系統的信息
dmesg系統啟動的信息
lsmod顯示系統的加載模塊信息
date 顯示系統時間
cat /etc/redhat-release顯示操作系統的內核信息
cat /proc/cpuinfo顯示cpu信息
lspci/lsusb顯示pci和usb信息
資源的信息顯示命令:
top當前占用系統資源最多的進程
free顯示內存和交換空間的使用情況
du -h顯示指定文件(目錄)已經使用的磁盤空間的情況
df -h顯示文件系統的磁盤空間總體使用情況
uptime 顯示系統上線時間,用戶數,平均負載
分區信息顯示命令舉例:
fdisk -l顯示所有磁盤分區
文件系統信息顯示命令舉例:
swapon -s查看所有交換分區
mount顯示所有掛裝項
用戶信息顯示命令舉例:
who、w在線登陸的用戶信息
whoami顯示用戶自己的身份
ID顯示用戶的id號
groups顯示用戶屬于哪些組
crontab -l顯示該用戶的所有計劃任務
進程的信息顯示命令舉例:
ps -ef顯示所有進程
pstree顯示進樹
網絡的信息顯示命令舉例:
ifconfig顯示系統接口信息
netstat顯示網絡狀態
以上對linux系統的信息顯示命令做了簡要介紹,下面我將給大家介紹幾種可以減少命令輸入量的技巧O(∩_∩)O,分別是命令追加、歷史命令、命令別名。
命令追加:我們在操作linux字符界面的時候,對于要輸入大量字符一定非常的頭疼,這一點linux系統也做了相應的措施給大家降低輸入量。首先我們在輸入的時候不是非要把所有命令和參數全都敲打出來才可以,例如:
輸入 ls -l系統列出如下:
usr abc bbb ddff
我們想使用命令cat來查看這里的某個文件,我們輸入cat u之后按下<tab>,系統就會自動把后面的幾個字母補全,這樣我們在輸入命令的時候輸入量就減少了。還有如果我們按下<tab>出現蜂鳴聲優兩種情況,一個是沒有合適的命令來補全,另一個是有多個候選命令,如果是第二種我們只要再按一下<tab>鍵,系統就會把所有匹配的命令列出來,我們在繼續輸入后面的字母最終匹配的命令就會出現了。
歷史命令:如果我們在進行操作的時候要經常重復輸入幾個命令的話,我們可以使用linux的歷史命令來簡化我們的操作。Bash可以存儲多個之前輸入的命令給,為我們以后重復使用提供方便。存儲歷史命令的數量有環境變量HISTSIZE值指定,歷史命令存儲的路徑由HISTFILE來指定,所有歷史命令都存儲在用戶私有目錄中的.basn_history隱含文件中。
只在文件中存儲了歷史命令式沒有用的,如果要使用歷史命令還要進行如下操作:
1.最簡單的使用方法是按上下鍵和Pgup、Pgdn鍵來選擇歷史命令
2.選擇歷史命令后可以使用鍵盤來修改歷史命令。
3.使用history命令來查看所有歷史命令
4.使用! <命令事件號>來使用歷史命令,只用!使用最近的歷史命令
5.使用! <已經使用過的命令的前半部分>
命令別名:有時候系統本身的命令我們可能用著不習慣,例如,命令太長、太復雜、太難記。給命令起一個我們自己容易記住的別名是一個提高工作效率的好辦法,例如:
alias<aliasname=originalname>
這里面的aliasname是用戶給起的別名,originalname是命令本身的名字和參數。我們也可以把別名定為已經存在的命令,那樣的話在使用這個命令的時候系統會優先別名,假如使用的時候想讓這個別名我們可以在這個命令前面加上/符號。
Alias命令設置的別名在從新登陸以后會失效,如果用戶想要讓每次登陸系統別名都起作用可以修改用戶私有目錄下的.bashrc文件。
如果要取消一個別名也很簡單,只要使用命令unalias <aliasname>即可。
轉載于:https://blog.51cto.com/boluoqb/1315195
總結
以上是生活随笔為你收集整理的Linux字符界面操作进阶的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 致青春VS杜蕾斯,用QQ空间电影大数据解
- 下一篇: 推荐一个在线json数据格式化网站