一、目錄以及檔案的基本操作
一、目錄以及檔案的基本操作
1、 pwd
顯示當前工作目錄的名稱
pwd -P
顯示連結的真實路徑
2、cd
切換當前工作目前
..
上級目錄,.
當前目錄,-
上次切換的目錄
3、ls
顯示目錄與檔案資訊
-a
顯示所有的資訊,包括隱藏檔案和目錄-d
顯示目錄本身的資訊,而非目錄下資料資訊-h
人性化顯示容量資訊-l
長格式顯示詳細資訊-c
顯示檔案或目錄屬性最後修改的時間-u
顯示檔案或目錄最後被訪問的時間-t
以修改時間排序,預設按檔名稱排序
4、touch
建立或修改檔案時間
touch hello.txt
如果hello.txt不存在,則已存在,則更新檔案所有的時間為當前系統時間
5、mkdir
建立目錄。
mkdir -p /tmp/test/jetty
建立多級目錄
6、cp
複製檔案與目錄
-r
遞迴,複製子檔案與子目錄,一般複製目錄時使用
cp /etc/hosts /tmp/
複製檔案/etc/hosts
至/tmp/
目錄下cp /etc/hosts /tmp/host
複製檔案/etc/hosts
至/tmp
目錄下並改名/host
cp -r /var/log/ /tmp/
複製目錄/var/log/
至/tmp/
目錄下
7、rm
刪除檔案或目錄
-f
不提示,強制刪除-i
刪除前,提示是否刪除-r
刪除目錄以及目錄下的所有內容
8、mv
移動(重新命名)檔案或目錄。
mv hello.txt hello.doc` 講`hello.txt`改名為`hello.doc
9、find
搜尋檔案或目錄
-empty
查詢空白檔案或者目錄-group
按組查詢-name
按照名稱查詢-iname
按名稱查詢,不區分大小寫-mtime
按修改時間查詢-size
按容量大小查詢-type
按檔案型別查詢,檔案f
、目錄d
、裝置b,c
、連結l
等-user
按使用者查詢-exec
對找到的穩定執行命令-a
並且-o
或者
eg:
find -name hello.doc
查詢當前目錄下名為hello.doc的文件find /root-name "*.log"
查詢/root
目錄下所有名稱以.log
結尾的檔案find -iname "Jacob"
不區分大小寫查詢檔案jacob
find / -empty
查詢/
目錄下所有的空白文件find / group tom
查詢/
目錄下所屬組tom
的文件find / mtime -3
查詢/
目錄下所有3天內被修改過的文件find / mtime +3
查詢/
目錄下所有3天前被修改的文件find / mtime 2
查詢計算機中2天前被修改過的文件find ./ -size+10M
查詢當前目錄下大於10MB的檔案find ./ -type f
查詢當前目錄下的所有普通檔案,會把目錄下檔案也查出來find / -user tom
查詢計算機中tom
所用有的檔案find ./ -size +1M -exec ls - l {} \;
查詢大於1MB的檔案後列出檔案的詳細資訊,\;
結尾符find / -size +1M -a -type f
查詢計算中所有大於1MB的檔案
10、du
計算檔案或者目錄的容量
-h
人性化顯示容量資訊
-s
僅顯示總容量
du /root
查詢/root
目錄以及子目錄的容量資訊du -sh /root
檢視/root
所佔磁碟空間的總和
二、檢視檔案內容
1、cat
檢視檔案的內容
-b
顯示行號,空白行不顯示行號-n
顯示行號,包括空白行
2、more
分頁檢視檔案內容,通過空格鍵
檢視下一頁,q鍵
則退出檢視
3、less
分頁檢視檔案內容,空格
下一頁、方向鍵
上下回翻、q鍵
退出檢視
4、head
檢視檔案頭部內容,預設顯示前10行
-c nK
顯示檔案前nKB的內容
-n
顯示檔案前n行的內容
5、tail
檢視檔案的尾部內容,預設顯示末尾10行
-c nK
顯示檔案末尾nKB的內容-n
顯示檔案末尾n行的內容-f
動態顯示檔案內容,安裝Ctrl+C
組合鍵退出
tail -100f /va/log/message.log
事實動檢視檔案末尾100行內容
6、wc
顯示檔案的行、單詞與位元組統計資訊
-c
顯示檔案位元組統計資訊-l
顯示檔案行數統計資訊-w
顯示檔案單詞統計資訊
eg:
wc /root/install.log
以此顯示檔案的行數、單詞數、位元組數wc -c /root/install.log
顯示檔案的位元組資訊wc -l /root/install.log
顯示檔案的行數wc -w /root/install.log
顯示檔案單詞個數
7、grep
查詢關鍵詞並列印匹配的行
-i
忽略大小寫-v
去反匹配-w
匹配單詞--color
顯示顏色
eg:
grep th test.txt
在test.txt
檔案中過濾出包含th
行grep --color th test.txt
對匹配的關鍵詞顯示顏色grep -i the test.txt
對過濾包含the的行,不區分大小寫grep -w num test.txt
對過濾單詞num,不過過濾numbergrep -v the test.txt
過濾不包含the關鍵詞的行
8、echo
顯示一行指定的文字
-
-n
不輸出行,預設echo
輸出內容會換行 -
-e
支援反斜線開始的轉義字元,遮蔽反斜線後面字元的原本含義如果使用
-e
選項,則可以識別如下字元序列的特許含義
\\
反斜線
\a
報警器
\b
退格鍵
\c
不生產格式輸出,預設echo
會自動新增換行
\f
輸入表單格式,換行後保留游標位置
\n
換行
\t
生成水平Tab
\v
生成垂直Tab
eg:
echo "Hello The Word"
直接輸出指定的字元echo -e "\\"
預設echo無法輸出\
符號echo -e "\a"
計算機蜂鳴器會響一聲echo -e "aa\b22"
回刪一個字元echo -e "hello\c" 不換行,等同於
-n`選項echo -e "hello\fthe word"
表單格式echo -e "hello\tthe world"
水平Tab鍵echo -e "hello\vthe\vworld"
垂直Tab鍵
9、ls
建立檔案或目錄連線,軟連線可以跨分割槽,但原始檔不可刪除,硬連結不可以跨分割槽,但可以將原始檔刪除
ln -s /test/hello.txt /tmp/hi.txt
建立檔案的軟連結ln -s /test/ /var/test
建立目錄軟連線ln /test/hello.txt /test/hi.txt
建立檔案硬連結
rm /test/hello.txt
刪除原始檔後,連結檔案仍可以正常使用
三、壓縮及解壓
1、gzip
壓縮與解壓縮 -d
解壓
gzip hello.txt
檔案壓縮後名為hello.txt.gz
gzip -d hello.txt.gz
解壓gz
檔案
2、bzip2
bzip2 hello.txt
檔案壓縮後為hello.txt.bz2
bzip2 -d hello.txt.bz2
解壓bz2
檔案
3、tar
打包與解包檔案
用法: tar 模式 [選項][路徑]...
模式
-c
建立打包檔案--delete
從打包檔案中刪除檔案-r
追加檔案至打包文件-t
列出打包文件的內容-x
釋放打包檔案-v
詳細地列出處理的檔案
選項:
-C
指定解壓路徑-f
指定打包後的檔名稱-j
打包後通過bzip2
格式壓縮--remove-files
打包後刪除原始檔-z
打包後通過gzip
格式壓縮
eg:
tar -cf etc.tar /etc/
將/etc/
目錄打包儲存為etc.tar
tar -czf boot.tar.gz /boot/
將/boot
目錄打包並壓縮為etc.tar.gz
tar cjf etc.tar.bz2 /tmp/
將/tmp/
目錄打包並壓縮為etc.tar.bz2
tar --delete etc/hosts -f etc.tar
將打包文件中刪除檔案hosts
tar -f etc.tar -r /root/install.log
追加檔案至打包文件`etc.tar中tar -tf boot.tar.gz
檢視打包文件中檔案的資訊tar -tvf etc.tar
檢視打包文件中檔案詳細資訊tar -xzf boot.tar.gz
解壓gz格式的打包文件至當前目錄tar -xzf boot.tar.bz2
解壓bz2格式的打包文件至當前目錄tar -xvzf boot.tar.gz -C /tmp
指定解壓路徑為/tmp
tar -czvf mess.tar.gz /var/log/messages --removefiles
打包壓縮後刪除原始檔