【cd命令】 ------------ cd 目錄名 意為切換目錄
常用例子:cd ~ 進入家目錄
cd .. 返回上層目錄
cd - 進入上一次工作路徑
cd / 進入主要目錄
【pwd命令】 ------------- 查看當前工作目錄路徑
常用例子:pwd 查看當前路徑
pwd - P 查看鏈接文件的實際路徑
【ls命令】 ------------- 查看文件夾包含的文件、查看文件權限、目錄信息等
常用例子:ls - l 列出文件的詳細信息 比如 文件名、權限、文件大小、所有者等
ls -a 列出目錄的所有文件
ls - t 以文件修改時間排序
ls - S 以文件大小排序
【mkdir命令】 ------------- 創建文件夾
常用例子:mkdir file 在當前工作目錄下創建名為file的文件夾
mkdir -m 對新建目錄設置存取權限,也可以用chmod命令設置
mkdir -p tmp/test/file 在tmp目錄下創建路徑為test/file的目錄,若不存在,則創建
【rm命令】 ---------------- 刪除一個目錄中的一個或多個文件或目錄
常用例子:rm -r 加上-r目錄,就會刪除目錄
rm -rf test 刪除test目錄及其子目錄中所有的目錄文件
rm -i *.log 刪除任何.log文件,刪除前逐一詢問確認
rm -- -f* 刪除以-f開頭的文件
【rmdir命令】 --------------- 從一個目錄中刪除一個或多個子目錄項,刪除某目錄時也必須具有對其父目錄的寫權限
注意:不能刪除非空目錄
常用命令:rmdir -p parent/child/child1 當parent子目錄被刪除后使它也成為了空目錄的話,則順便一並刪除
【mv命令】 ----------------- 移動文件或修改文件名
常用命令:mv test1.log test2.log 將文件test1.log重命名為test2.log
mv log1.txt log2.txt /test 將這兩個文件移動到test目錄中
mv -i log1.txt log2.txt 將文件名log1改名為log2;如果log2已存在,則詢問是否覆蓋
mv * ../ 移動當前文件夾下的所有文件到上一級目錄
【cp命令】 ------------------ 將源文件復制到目標文件,或將多個源文件復制到目標目錄
注意:如果目標文件已存在會提示是否覆蓋,而在shell腳本中,如果不加-i參數,則不會提示,而是直接覆蓋
常用命令:cp -ai a.txt test 復制a.txt到test目錄下,保持原文件時間,如果原文件存在,提示是否覆蓋
cp -s a.txt link_a.txt 為a.txt建立一個鏈接(快捷方式)
【cat命令】 ----------------- 三個功能。一次顯示整個文件;只能創建新文件,不能編輯已有文件cat >filename;能將幾個文件合並為一個文件 cat file1 file2 >file
常用命令:cat -b test.log test2.log file.log 將前兩個文件的內容加上行號(空白行不加)后,內容附加到file.log文件中
cat -n test.log file.log 把test.log文件的內容加上行號后輸入到file.log文件里
cat log.txt 將文件里的內容反向顯示出來
【more命令】 ----------------- 類似於cat more會以一頁一頁的顯示方便使用者逐頁閱讀。最基本的指令就是:按下大空格鍵就往下一頁顯示,按b鍵會往回一頁顯示。
命令參數:more +n test.txt 從第n行開始顯示
more -n test.txt 定義屏幕大小為n行,意思是每頁顯示n行
more -c test.txt 從頂部清屏,然后顯示
more -d yest.txt 提示按空格鍵繼續,按Q退出,禁用響鈴功能
more +n/pattern 在字串pattern前兩行之后開始顯示
more -s 把連續的多個空行顯示為一行
more -u 把文件內容中的下划線去掉
常用操作命令:enter 向下n行,默認為1行
空格鍵/ctrl + f 向下滾動一屏
ctrl + b 向上返回一屏
= 輸出當前行的行號
:f 輸出文件名和當前的行號
V 調用vi編輯器
q 退出more
s -l | more -5 在所列出文件目錄詳細信息,借助管道使每次顯示5行
【less命令】 ------------- less可以隨意瀏覽文件,而more僅能向前移動,而不能向后移動
命令參數:- N 顯示每行的行號
- s 顯示連續空行為一行
- i 忽略搜索時的大小寫
b 向后翻一頁
d 向后翻半頁
h 顯示幫助界面
Q 退出less命令
u 向前滾動半頁
y 向前滾動一行
空格鍵 滾動一行
回車鍵 滾動一行
常用命令:less 1.log 2.log 查看多個文件
ps -aux | less -N ps查看進程信息,並通過less分頁顯示
【head命令】 ---------------- 默認head命令打印其相應文件的開頭10行
常用命令:head 1.log -n 20 顯示1.log文件中的前20行
head -c 20 1.log 顯示1.log文件前20字節
head -n -10 1.log 顯示1.log文件內容的最后10行
【tail命令】 ------------------- 常用於查看日志文件
常用命令:tail -f 循環讀取 常用於查看遞增的日志文件
tail -n 10 1.log 從后向前讀10行文件內容
【which命令】 ------------------ 搜索 查找 在linux中查找某個文件,但不知道放哪里了,可以使用which命令
常用命令:which ls 查看ls命令是否存在
which which 查看which
which cd 查看cd
查看當前path配置:echo $PATH ;或使用env查看所有環境變量及對應值
【find命令】 ------------------ 用於在文件樹中查找文件,並做出相應處理
常用命令:find -atime -2 查找48小時內修改過的文件
find ./-name '*.log' 當前目錄查找以.log結尾的文件
find /opt -perm 777 查找/opt目錄下 權限為777的文件
find -size + 1000c 查找大於1K的文件
find -size 1000c 查找等於1000字符的文件
【chmod命令】 --------------- 用於改變linux系統文件或目錄的訪問權限
權限范圍: r 讀權限 數字4表示
w 寫權限 數字2表示
x 執行權限 數字1表示
- 刪除權限 數字0表示
s 特殊權限
常用命令:chmod a+x t.log 增加文件 t.log所有用戶可執行權限
chmod u=r t.log -c 撤銷原來所有的權限,然后使擁有者具有可讀權限,並輸出處理信息
chmod 751 t.log
chmod u+r,g+r,o+r -R text/-c 將test目錄及其子目錄所有文件添加可讀權限
【tar命令】 --------------- 壓縮和解壓文件
常用命令:tar zcvf filename.tar.gz 壓縮
tar zxvf filename.tar.gz 解壓
tar jcvf filename.tar.gz 壓縮
tar jxvf filename.tar.bz2 解壓
【chown命令】 ----------------- 將指定文件的擁有者改為指定的用戶或組
常用命令:chown -c mail:mail 1.log 改變擁有者和群組,並顯示改變信息
chown -c:mail t.log 改變文件群組
chown -cR mail t.log 改變文件夾及文件目錄屬主及屬組為mail
【df命令】 --------------- 顯示磁盤空間使用情況
常用參數:-a 全部文件系統列表
-h 以方便閱讀的方式顯示信息
-i 顯示inode信息
-k 區塊為1024字節
-l 只顯示本地磁盤
-T 列出文件系統類型
常用命令:df -l 顯示磁盤使用情況
df -haT 以易讀方式列出所有文件系統及其類型
【du命令】----------------- 查看使用空間 不同的是 du是對文件和目錄磁盤使用的空間的查看
常用命令:du -ah scf/ 以易讀方式顯示文件夾內及子文件夾大小
du -a test 顯示test目錄下所有的目錄及文件
du -h scf/ 以易讀方式顯示文件夾內子文件夾大小
du -hc test/ scf/ 顯示幾個文件或目錄各自占用磁盤空間的大小,還統計他們的總和
du -hc --max-depth=1 scf/ 輸出當前目錄下各個子目錄所使用的的空間
【cal命令】--------------------- 可以用戶顯示公歷日歷
常用參數:cal 9 2019 顯示指定的年月日期
cal -y 2019 顯示2019年每個月日歷
cal -3m 將星期一作為第一列,顯示前中后三月
【date命令】 -------------------- 顯示或設定系統的日期與時間
常用參數:date +%Y%m%d --date="+1 day" 顯示下一天的日期
date -d "nov 22" 幾年的11月22日是星期三
date -d '2 weeks' 2周后的日期
date -d 'next monday' 下周一的日期
date -d tomorrow +%Y%m%d 明天的日期
date -d yesterday +%Y%m%d 昨天的日期
date -d last-month +%Y%m 上個月是幾月
date -d next-month + %Y%m 下個月是幾月
【grep命令】 ------------- 強大的文本搜索命令
常用命令:ps -ef | grep svn 查找指定進程
ps -ef | grep savn -c 查找指定進程的個數
cat test.txt | grep -f key.log 從文件中遞歸查找以grep開頭的行,並只列出文件
grep -E 'ed | at' test.txt 顯示包含ed或者at字符的內容
【wc命令】 ----------------- 統計指定的文件中字節數、字數、行數、並將統計結果輸出
常用命令:wc test.txt 查找文件額行數、單詞數、字節數、文件名
cat test.txt | wc -l 統計輸出結果的行數