前言
本文主要為學習貼,用來記錄一些以供參考。
檔案内容檢視
cat
從上往下閱讀檔案内容
cat [-AbEnTv] ${FILE_NAME)
cat -n /etc/issue 将該檔案的内容輸出到标準輸出中,并顯示行号
cat file1 file2 > file3 将file1 file2的内容依次添加到file3當中
tac
從下往上閱讀檔案内容,用法同cat
nl
添加行号列印,預設情況下空白行不顯示行号
nl [-bnw] ${FILE_NAME}
nl -b a file1 即使空白行也顯示行号
nl -b a -n rz file 空白行也顯示行号,并且行号在字段的最右方顯示,且行号不用加0對齊
more/less
一頁一頁翻動檔案。
more ${FILE_NAME} 向下翻動檔案
less ${FILE_NAME} 向上/下翻動檔案
head/tail
取檔案的前幾行或者最後幾行内容
head/tail [-n number] ${FILE_NAME}
head -n 10 file 讀取檔案前十行的内容
tail -n 10 file 讀取檔案後十行的内容
head -n -10 file 不列印檔案後十行内容
tail -n +100 file 隻列印100行以後的内容
tail -f file 打開檔案并持續更新,直到ctrl+c才退出。這個常用于檢視最新的日志
指令與檔案查詢
which
尋找執行檔案,查找指令的完整檔案名
which [-a] command #-a會将所有由PATH目錄中可以找到的指令均列出,而不隻第一個被找到的指令
which ifconfig #在非root使用者下會查找不到,因為ifconfig位于/sbin/ifconfig下,而非root使用者的PATH中不包含該路徑,是以找不到
which cd #找不到,因為cd為bash的内置指令
whereis
根據檔案名尋找檔案,查找檔案的完整檔案名
whereis [-bmsu] 檔案或目錄名
-b 隻找二進制檔案
-m 隻找在manual路徑下的檔案
-s 隻找source源檔案
-u 查找不在上述選項中的其他特殊檔案
locate+updatedb
locate會根據/var/lib/mlocate内的資料庫記載,找出使用者輸入的關鍵字檔案名,即所有包含該關鍵字的檔案都将被輸出。但是因為資料庫的更新一般為一天一次,是以如果需要查找新的内容,需要用updatedb指令更新資料庫,updatedb會根據/etc/updatedb.conf去查找硬碟内的檔案名,并更新資料庫檔案
locate [-ir] keyword
-i 忽略大小寫差異
-r keyword可以為正規表達式
find
查找檔案,磁盤查找,支援通配符
find [PATH] [option] [action]
find / -mtime 0 #查找24小時内被修改過的檔案
find /etc -mtime 3 #查找3天前的24小時内被修改的檔案
find / -mtime +3 #查找3天前(不含3天本身)被更改的檔案
find / -mtime -3 #查找3天内被更改的檔案
find / -user name #查找使用者名為name的檔案
find / -group name #查找群組名為group的檔案
find / -nouser #查找不屬于任何使用者的檔案,可能出現于網絡檔案,或是已經被删除的使用者建立的檔案
find / -name filename #查找檔案名為filename的檔案
find / -type TYPE #查找某一類檔案,f:正規檔案,b:裝置檔案,d:目錄,l:連接配接檔案,s:socket,p:FIFO
壓縮與打包
常見壓縮擴充名
*.Z: compress程式壓縮檔案
*.gz: gzip程式壓縮檔案
*.bz2: bzip2程式壓縮的檔案
*.tar: tar程式打包的檔案,但沒有被壓縮
*.tar.gz: tar程式打包的檔案,其中經過gzip的壓縮
*.tar.bz2: tar程式打包的檔案,其中經過bzip2壓縮
gzip
gzip可以解開compress,zip與gzip等軟體所壓縮的檔案。gzip壓縮後,源檔案會被删除,被替代為.gz的壓縮檔案。
gzip [-cdtv#] 檔案名
-c: 将壓縮的資料輸出到螢幕上,可通過資料流重定向來處理
-d: 解壓縮的參數
-t: 可以用來校驗一個壓縮檔案的一緻性
-v: 顯示壓縮比等資訊
-#: 壓縮等級,-1最快,-9最慢但壓縮程度最高,預設-6
gzip -d filename: 會将壓縮檔案解壓縮,并删除壓縮檔案
tar
tar [-j|-z] [cv] [-f 建立的檔案名] filename #壓縮
tar [-j|-z] [xv] [-f 打封包件名] [-C 目錄] #解壓縮
-c: 建立打封包件,可配合v檢視過程中被打包的檔案名
-x: 解打包或解壓縮功能,可以搭配-C在特定目錄中解開
-j: 通過bzip2的支援進行壓縮和解壓縮
-z: 通過gzip支援壓縮和解壓縮
-v: 将正在處理的檔案名顯示出來
-C: 在特定目錄中解壓縮
-p: 保留備份資料的原本權限和屬性
-P: 保留絕對路徑,一般情況下都是相對路徑,防止資料覆寫
--exclude=FILE: 在壓縮過程中不要講FILE打包進去
--newer: 打包ctime和mtime在日期後面的檔案
--newer-mtime:打包mtime在日期後面的檔案
tar -zcv -f filename.tar.gz filename #壓縮打包為filename.tar.gz
tar -zxv -f filename.tart.gz -C 欲解壓縮的目錄 filename
原文位址:
https://segmentfault.com/a/1190000016598226