常用指令
ls 顯示文件或目錄
-l 列出文件詳細信息l(list)
-a 列出當前目錄下所有文件及目錄,包括隱藏的a(all)
顯示目錄下所有的文件總數
ls -lrt
mkdir 創(chuàng)建目錄
- -p 創(chuàng)建目錄,若無父目錄,則創(chuàng)建p(parent)
cd 切換目錄
touch 創(chuàng)建空文件
echo 創(chuàng)建帶有內容的文件
tcpdump 抓包分析工具
diff 比較文件誤差
du
disk usage,是通過搜索文件來計算每個文件的大小然后累加,du能看到的文件只是一些當前存在的,沒有被刪除的。他計算的大小就是當前他認為存在的所有文件大小的累加和。
實例
- 顯示目錄或者文件所占空間
du
du log2012.log 顯示單個文件大小
du scf 顯示目錄大小
du log30.tar.gz log31.tar.gz 顯示多個文件大小
du -s 只顯示總和的大小
du -ah test 文件和目錄都顯示文件大小,后面加個test有利于閱讀
du|sort -nr|more 按照控件大小來排序
du -h --max-depth=1 輸出當前目錄下各個子目錄所使用的空間
df
顯示指定磁盤文件的可用空間。如果沒有文件名被指定,則所有當前被掛載的文件系統(tǒng)的可用空間將被顯示。默認情況下,磁盤空間將以 1KB 為單位進行顯示,除非環(huán)境變量 POSIXLY_CORRECT 被指定,那樣將以512字節(jié)為單位進行顯示
實例
df
df -i 以inode模式來顯示磁盤使用情況
df -t ext3 顯示指定類型磁盤
df -T 列出文件系統(tǒng)的類型
- 以更易讀的方式顯示目前磁盤空間和使用情況
[root@CT1190 log]# df -h
文件系統(tǒng) 容量 已用 可用 已用% 掛載點
/dev/sda7 19G 871M 18G 5% /
/dev/sda9 195G 89G 96G 49% /opt
/dev/sda8 4.8G 557M 4.0G 13% /var
/dev/sda6 19G 1.9G 17G 11% /usr
/dev/sda3 965M 24M 892M 3% /boot
tmpfs 16G 0 16G 0% /dev/shm
[root@CT1190 log]# df -H
文件系統(tǒng) 容量 已用 可用 已用% 掛載點
/dev/sda7 21G 913M 19G 5% /
/dev/sda9 209G 96G 103G 49% /opt
/dev/sda8 5.1G 584M 4.3G 13% /var
/dev/sda6 21G 2.1G 18G 11% /usr
/dev/sda3 1.1G 25M 936M 3% /boot
tmpfs 17G 0 17G 0% /dev/shm
[root@CT1190 log]# df -lh
文件系統(tǒng) 容量 已用 可用 已用% 掛載點
/dev/sda7 19G 871M 18G 5% /
/dev/sda9 195G 89G 96G 49% /opt
/dev/sda8 4.8G 557M 4.0G 13% /var
/dev/sda6 19G 1.9G 17G 11% /usr
/dev/sda3 965M 24M 892M 3% /boot
tmpfs 16G 0 16G 0% /dev/shm
[root@CT1190 log]# df -k
文件系統(tǒng) 1K-塊 已用 可用 已用% 掛載點
/dev/sda7 19840892 890896 17925856 5% /
/dev/sda9 203727156 93292572 99918840 49% /opt
/dev/sda8 4956284 570188 4130264 13% /var
/dev/sda6 19840892 1977568 16839184 11% /usr
/dev/sda3 988116 23880 913232 3% /boot
tmpfs 16473212 0 16473212 0% /dev/shm
說明:
- -h更具目前磁盤空間和使用情況 以更易讀的方式顯示
- -H根上面的-h參數相同,不過在根式化的時候,采用1000而不是1024進行容量轉換
- -k以單位顯示磁盤的使用情況
- -l顯示本地的分區(qū)的磁盤空間使用率,如果服務器nfs了遠程服務器的磁盤,那么在df上加上-l后系統(tǒng)顯示的是過濾nsf驅動器后的結果
- -i顯示inode的使用情況。linux采用了類似指針的方式管理磁盤空間影射.這也是一個比較關鍵應用
cat 查看文件內容
cp 復制文件 》源文件 目標文件夾
- -r 目錄
- -p 復制時保留文件屬性
實例
- 拷貝kerry目錄下文件到tmp目錄下
cp /home/kerry/* /tmp
- 拷貝文件file1并更名為file2
cp file1 file2
- 將目錄下的所有目錄包括子目錄陸續(xù)復制到另外一個目錄
cp -r /home/tomcat/ /tmp/bak
- 保存與源文件相關聯的修改日期、時間和訪問控制列表等
cp -p install.log.syslog install.log.syslog.bak1
mv 移動或重命名
- -i 覆蓋文件會有覆蓋提示
- -u 則只在源文件比目標文件新時才執(zhí)行更新
- -v 打印移動的結果信息
- -n 選項將不會允許我們覆蓋任何已存在的文件
- -b 該選項會在新文件覆蓋舊文件時將舊文件做備份
- -f 無條件覆蓋已經存在的文件
實例
- 把 file_1.txt移動到目標文件夾下
mv file_1.txt /home/pungki/office
- 多文件移動
mv file_2.txt file_3.txt file_4.txt /home/pungki/office
- 移動所有txt文件
mv *.txt /home/pungki/office
- 把file目錄移動到hme/file/目錄下
mv file/ /home/file/
- 把file_1重命名為file_2.注意目標位置和源位置必須相同才可以。然后文件名必須不同
mv file_1.txt file_2.txt
- 重名名目錄
mv directory_1/ directory_2/
- 多文件移動
mv -v *.txt /home/pungki/office
- 能移動這些文件是因為它們最近的修改時間戳比 /home/pungki/office 目錄中的文件新
mv -uv *.txt /home/pungki/office
- 多文件移動,如果目標文件已經存在,不覆蓋
mv -vn *.txt /home/pungki/office
- 新文件覆蓋舊文件時將舊文件做備份
mv -bv *.txt /home/pungki/office
- 無條件覆蓋已經存在的文件
mv -f *.txt /home/pungki/office
rm 刪除文件
- -r 遞歸刪除,可刪除子目錄及文件
- -f 強制刪除
- -i 進行任何刪除操作前必須先確認
- -v 刪除文件后出現提示信息
rm -v gsp_lgwr_4617.trc
rm -iv gsp_lgwr_5005.trc
rm -rf kerry/
rm -r kerry/
rm -v *.trc
- find 在文件系統(tǒng)中搜索某文件
命令參數
- pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統(tǒng)根目錄。
- -print: find命令將匹配的文件輸出到標準輸出。
- -exec: find命令對匹配的文件執(zhí)行該參數所給出的shell命令。相應命令的形式為'command' { } ;,注意{ }和\;之間的空格。
- -ok: 和-exec的作用相同,只不過以一種更為安全的模式來執(zhí)行該參數所給出的shell命令,在執(zhí)行每一個命令之前,都會給出提示,讓用戶來確定是否執(zhí)行。
** 命令選項**
- -name 按照文件名查找文件。
- -perm 按照文件權限來查找文件。
- -prune 使用這一選項可以使find命令不在當前指定的目錄中查找,如果同時使用-depth選項,那么-prune將被find命令忽略。
- -user 按照文件屬主來查找文件。
- -group 按照文件所屬的組來查找文件。
- -mtime -n +n 按照文件的更改時間來查找文件,
-n表示文件更改時間距現在n天以內,+ n表示文件更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。 - -nogroup 查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。
- -nouser 查找無有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。
- -newer file1 ! file2 查找更改時間比文件file1新但比文件file2舊的文件。
- -type 查找某一類型的文件,諸如:
- b - 塊設備文件。
- d - 目錄。
- c - 字符設備文件。
- p - 管道文件。
- l - 符號鏈接文件。
- f - 普通文件。
- -size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以字節(jié)計。
- -depth:在查找文件時,首先查找當前目錄中的文件,然后再在其子目錄中查找。
另外,下面三個的區(qū)別: - -amin n 查找系統(tǒng)中最后N分鐘訪問的文件
- -atime n 查找系統(tǒng)中最后n*24小時訪問的文件
- -cmin n 查找系統(tǒng)中最后N分鐘被改變文件狀態(tài)的文件
- -ctime n 查找系統(tǒng)中最后n*24小時被改變文件狀態(tài)的文件
- -mmin n 查找系統(tǒng)中最后N分鐘被改變文件數據的文件
- -mtime n 查找系統(tǒng)中最后n*24小時被改變文件數據的文件
實例
- 超找48小時內修改過的文件
find -atime -2
- 最后5分鐘改變狀態(tài)
find -cmin 5
- 根據關鍵字查找.在當前目錄查找 以.log結尾的文件。 ". "代表當前目錄
find . -name "*.log"
- 查找/opt/soft/test/目錄下 權限為 777的文件
find . -type f -name "*.log"
- 查找當前所有目錄并排序
find . -type d | sort
- 查找當前目錄大于1K的文件
find . -size +1000c -print
wc 統(tǒng)計文本中行數、字數、字符數
參數
- -c或--bytes或--chars 只顯示Bytes數。
- -l或--lines 只顯示列數。
- -w或--words 只顯示字數。
- --help 在線幫助。
- --version 顯示版本信息。
實例
-顯示文件的行數為3、單詞數92、字節(jié)數598
wc testfile
- 統(tǒng)計多個文件的信息
wc testfile testfile_1 testfile_2
grep 在文本文件中查找某個字符串
rmdir 刪除空目錄
tree 樹形結構顯示目錄,需要安裝tree包
pwd 顯示當前目錄
ln 創(chuàng)建鏈接文件
more、less 分頁顯示文本文件內容
head 文件頭
默認head命令打印其相應文件的開頭10行
命令參數
- -q 隱藏文件名
- -v 顯示文件名
- -c<字節(jié)> 顯示字節(jié)數
- -n<行數> 顯示的行數
實例
- 顯示文件的前5行
head -n 5 log2014.log
- 顯示文件前20個字節(jié)
head -c 20 log2014.log
- 件的除了最后32個字節(jié)以外的內容
head -c -32 log2014.log
- 輸出文件除了最后6行的全部內容
head -n -6 log2014.log
tail
用于顯示指定文件末尾內容,不指定文件時,作為輸入信息進行處理。常用查看日志文件。
命令參數:
- -f 循環(huán)讀取
- -q 不顯示處理信息
- -v 顯示詳細的處理信息
- -c<數目> 顯示的字節(jié)數
- -n<行數> 顯示行數
- --pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.
- -q, --quiet, --silent 從不輸出給出文件名的首部
- -s, --sleep-interval=S 與-f合用,表示在每次反復的間隔休眠S秒
實例
- 顯示文件最后5行內容
tail -n 5 log2014.log
- 循環(huán)查看文件內容
ping 192.168.120.204 > test.log &
tail -f test.log
說明:
ping 192.168.120.204 > test.log & //在后臺ping遠程主機。并輸出文件到test.log;這種做法也使用于一個以上的檔案監(jiān)視。用Ctrl+c來終止
- 從第5行開始顯示文件
tail -n +5 log2014.log
- 要從第200 字節(jié)開始,每次顯示一頁notes 文件
tail -c +200 notes | pg
ctrl+alt+F1 命令行全屏模式
打包壓縮相關命令
tar
是對文件或者目錄進行歸檔,歸成一個文件,但并不壓縮,但是它可以調用壓縮bzip2,gzip來實現壓縮
主選項
- -c 創(chuàng)建新的檔案文件
- -r 把要歸檔的文件追加到檔案文件的末尾
- -t 列出檔案文件中已經歸檔的文件列表
- -u 更新文件,用新文件替代檔案中原始文件。如果備份文件中不存在該文件,則把它追加到備份文件的末尾
- -x 從檔案文件中還原文件
輔選項
- -f 歸檔到普通文件
- -k 保存已存在的文件。例如在還原的過程中,遇到相同的文件,不會進行覆蓋
- -m 在還原文件時,把所有文件的修改時間設定為現在時間
- -v 報告tar的詳細處理過程
- -w 每一步都要進行確認
- -z 用gzip來壓縮/解壓縮文件
- -j 通過bzip2壓縮/解壓縮文件
- -Z 通過compress程序過濾檔案。
實例
- 將/etc/目錄下所有東西歸檔到當前目錄下,取名為wpc.tar
必須包含-c(打包),-f指定打包后文件
tar cvf wpc.tar /etc/
- 將當前目錄下wpc.tar解壓到當前目錄下
tar xvf wpc.tar
- 打包并且使用bzip2壓縮文件
tar -cjvf test.tar.bz2 test
- 解壓縮bzip2壓縮包。把c改成x就是解壓
tar -xjvf test.tar.bz2
- 將文件f2從打包中刪除
tar --delete f2 -vff.tar
gzip
可以將一般的文件進行壓縮,或者將歸檔的文件進行壓縮
選項參數
- -a或——ascii:使用ASCII文字模式;
- -d或--decompress或----uncompress:解開壓縮文件;
- -f或——force:強行壓縮文件。不理會文件名稱或硬連接是否存在以及該文件是否為符號連接;
- -h或——help:在線幫助;
- -l或——list:列出壓縮文件的相關信息;
- -L或——license:顯示版本與版權信息;
- -n或--no-name:壓縮文件時,不保存原來的文件名稱及時間戳記;
- -N或——name:壓縮文件時,保存原來的文件名稱及時間戳記;
- -q或——quiet:不顯示警告信息;
- -r或——recursive:遞歸處理,將指定目錄下的所有文件及子目錄一并處理;
- -S或<壓縮字尾字符串>或----suffix<壓縮字尾字符串>:更改壓縮字尾字符串;
- -t或——test:測試壓縮文件是否正確無誤; -v或——verbose:顯示指令執(zhí)行過程;
- -V或——version:顯示版本信息; -<壓縮效率>:壓縮效率是一個介于1~9的數值,預設值為“6”,指定愈大的數值,壓縮效率就會愈高;
- --best:此參數的效果和指定“-9”參數相同;
- --fast:此參數的效果和指定“-1”參數相同。
實例
gzip -v wpc.bmp
gzip -dv * //每個文件壓縮成.gz文件
gzip -d wpc.bmp.gz //解壓
gzip -r log.tar //此時壓縮文件的擴展為.tar.gz
gzip -rv test6 //遞歸壓縮
gzip -dr test6 //遞歸解壓
- wpc.bmp.gz被解壓縮,并被刪除,出現wpc.bmp
gunzip -d wpc.bmp.gz
- 先使用tar命令打包,再壓縮
tar -cvf test.tartest
gzip test.tar
zip & unzip
zip
zip與windows的winzip壓縮程序產生相同壓縮文件.zip。
常用參數
- -d:從壓縮文件內刪除指定的文件。
- -g:將文件壓縮后附加在既有的壓縮文件之后,而非另行建立新的壓縮文件。
- -r:遞 歸處理,將指定目錄下的所有文件和子目錄一并處理。
- -<壓縮效率> 壓 縮效率是一個介于1-9的 數值
實例
- 將當前目錄下,wpc子目錄下面的所有內容壓縮成wpc.zip
zip wpc.zip wpc/
- 刪除已有zip文件中文件test
zip -d test.ziptest/test.txt
- 向已有zip文件增加壓縮文件
zip -m test.zip./test/test.txt
- 排除制定文件不壓縮
zip -r test.zip test-x ./test/test.txt
unzip
- 語法格式:unzip [選項] 壓縮文件名.zip
常用選項
- -x 文件列表 解壓縮文件,但不包括“文件列表”中指定的文件
- -v 查看壓縮文件目錄,但不解壓
- -t 測試文件有無損壞,但不解壓
- -d 目錄 把壓縮文件解壓到指定目錄下
- -z 只顯示壓縮文件的注解
- -n 不覆蓋已經存在的文件
- -o 覆蓋已存在的文件且不要求用戶確認
- -j 不重建文檔的目錄結構,把所有文件解壓到同一目錄下
- -P<密碼> 使用zip的密碼選項。
實例
- 解壓縮文件test.zip
unzip test.zip
- 查看壓縮文件目錄及文件信息,并不解壓
unzip -v test.zip
- .tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是壓縮!)
- .gz
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
- .tar.gz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
- .bz2
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
- .tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
- .bz
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
壓縮:未知
- .tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:未知
- .Z
解壓:uncompress FileName.Z
壓縮:compress FileName
- .tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
- .tgz
解壓:tar zxvf FileName.tgz
壓縮:未知
- .tar.tgz
解壓:tar zxvf FileName.tar.tgz
壓縮:tar zcvf FileName.tar.tgz FileName
- .zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
- .rar
解壓:rar a FileName.rar
壓縮:rar e FileName.rar
關機/重啟機器
- shutdown
- -r 關機重啟
- -h 關機不重啟
- now 立刻關機
- halt 關機
- reboot 重啟