常考的 Linux 命令

常考的 Linux 命令

常考的 Linux 命令


資料來源:https://mp.weixin.qq.com/s/FFxs_iGpgZp3lRmABxFuuQ


cd /home :進入’/ home’目錄
cd .. :返回上一級目錄  
cd ../.. :返回上兩級目錄  
cd :進入個人的主目錄  
cd ~user1 :進入個人的主目錄  
cd – :返回上次所在的目錄

ls :查看目錄中的文件  
ls -l :顯示文件和目錄的詳細資料  
ls -a :列出全部文件,包含隱藏文件
ls -R :連同子目錄的內容一起列出(遞歸列出),等於該目錄下的所有文件都會顯示出來   
ls [0-9] :顯示包含數字的文件名和目錄名

cp -a :將文件的特性一起復制
cp -p :連同文件的屬性一起復制,而非使用默認方式,與-a相似,常用於備份
cp -i :若目標文件已經存在時,在覆蓋時會先詢問操作的進行
cp -r :遞歸持續複製,用於目錄的複制行為
cp -u :目標文件與源文件有差異時才會復制

mv -f :force強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋
mv -i :若目標文件已經存在,就會詢問是否覆蓋
mv -u :若目標文件已經存在,且比目標文件新,才會更新

rm -f :就是force的意思,忽略不存在的文件,不會出現警告消息
rm -i :互動模式,在刪除前會詢問用戶是否操作
rm -r :遞歸刪除,最常用於目錄刪除,它是一個非常危險的參數

cat file1 :從第一個字節開始正向查看文件的內容  
tac file1 :從最後一行開始反向查看一個文件的內容  
cat -n file1 :標示文件的行數  
more file1 :查看一個長文件的內容  
head -n 2 file1 :查看一個文件的前兩行  
tail -n 2 file1 :查看一個文件的最後兩行  
tail -n + 1000 file1 :從1000行開始顯示,顯示1000行以後的
cat filename | head -n 3000 | tail -n +1000 :顯示1000行到3000行
cat filename | tail -n +3000 | head -n 1000 :從第3000行開始,顯示1000(即顯示3000~3999行)

find / -name file1 :從’/’開始進入根文件系統搜索文件和目錄  
find / -user user1 :搜索屬於用戶’user1’的文件和目錄  
find /usr/bin -type f -atime +100 :搜索在過去100天內未被使用過的執行文件  
find /usr/bin -type f -mtime -10 :搜索在10天內被創建或者修改過的文件  
whereis halt :顯示一個二進製文件、源碼或man的位置  
which halt :顯示一個二進製文件或可執行文件的完整路徑

find /var/mail/ -size +50M -exec rm {} \; :刪除大於50M的文件

ls -lh :顯示權限  
chmod ugo+rwx directory1 :設置目錄的所有人(u)、群組(g)以及其他人(o)以讀(r,4 )、寫(w,2)和執行(x,1 )的權限  
chmod go-rwx directory1 :刪除群組(g)與其他人(o)對目錄的讀寫執行權限

chown user1 file1 :改變一個文件的所有人屬性  
chown -R user1 directory1 :改變一個目錄的所有人屬性並同時改變改目錄下所有文件的屬性  
chown user1:group1 file1 :改變一個文件的所有人和群組屬性

chgrp group1 file1 :改變文件的群組

grep Aug /var/log /messages :在文件’/var/log/messages’中查找關鍵詞”Aug”  
grep ^Aug /var/log/messages :在文件’/var/log/messages’中查找以”Aug”開始的詞彙  
grep [0 -9] /var/log/messages :選擇’/var/log/messages’文件中所有包含數字的行  
grep Aug -R /var/log/*在目錄’/var/log’ :及隨後的目錄中搜索字符串”Aug”  
sed ‘s/stringa1/stringa2/g’ example.txt :將example.txt文件中的”string1″替換成”string2″  (取代/替換 文字)
sed ‘/^$/d’ example.txt :從example.txt文件中刪除所有空白行

paste file1 file2 :合併兩個文件或兩欄的內容  
paste -d ‘+’ file1 file2 :合併兩個文件或兩欄的內容,中間用”+”區分

sort file1 file2 :排序兩個文件的內容  
sort file1 file2 | uniq :取出兩個文件的並集(重複的行只保留一份)  
sort file1 file2 | uniq -u :刪除交集,留下其他的行  
sort file1 file2 | uniq -d :取出兩個文件的交集(只留下同時存在於兩個文件中的文件)

comm -1 file1 file2 :比較兩個文件的內容只刪除’file1’所包含的內容  
comm -2 file1 file2 :比較兩個文件的內容只刪除’file2’所包含的內容  
comm -3 file1 file2 :比較兩個文件的內容只刪除兩個文件共有的部分

tar
-c :新建打包文件
-t :查看打包文件的內容含有哪些文件名
-x :解打包或解壓縮的功能,可以搭配-C(大寫)指定解壓的目錄,注意-c,-t,-x不能同時出現在同一條命令中
-j :通過bzip2的支持進行壓縮/解壓縮
-z :通過gzip的支持進行壓縮/解壓縮
-v :在壓縮/解壓縮過程中,將正在處理的文件名顯示出來
-f filename :filename為要處理的文件
-C dir :指定壓縮/解壓縮的目錄dir 
壓縮:tar -jcv -f filename.tar.bz2要被處理的文件或目錄名稱
查詢:tar -jtv -f filename.tar.bz2 
解壓:tar -jxv -f filename.tar.bz2 -C欲解壓縮的目錄

bunzip2 file1.bz2 :解壓一個叫做’file1.bz2’的文件  
bzip2 file1 :壓縮一個叫做’file1’的文件  
gunzip file1.gz :解壓一個叫做’file1.gz’的文件  
gzip file1 :壓縮一個叫做’file1’的文件  
gzip – 9 file1 :最大程度壓縮  
rar a file1.rar test_file :創建一個叫做’file1.rar’的包  
rar a file1.rar file1 file2 dir1 :同時壓縮’file1′, ‘file2’以及目錄’dir1’ 
rar x file1.rar :解壓rar包

zip file1.zip file1 :創建一個zip格式的壓縮包  
unzip file1.zip :解壓一個zip格式壓縮包  
zip -r file1.zip file1 file2 dir1 :將幾個文件和目錄同時壓縮成一個zip格式的壓縮包

shutdown -h now :關閉系統(1)  
init 0 :關閉系統(2)  
telinit 0 :關閉系統(3)  
shutdown -h hours:minutes & :按預定時間關閉系統  
shutdown -c :取消按預定時間關閉系統  
shutdown -r now :重啟( 1)  
reboot :重啟(2)  
logout :註銷  
time :測算一個命令(即程序)的執行時間

ps
-A :所有的進程均顯示出來
-a :不與terminal有關的所有進程
-u :有效用戶的相關進程
-x :一般與a參數一起使用,可列出較完整的信息
-l :較長,較詳細地將PID的信息列出
ps aux :查看系統所有的進程數據
ps ax :查看不與terminal有關的所有進程
ps -lA :查看系統所有的進程數據

ps axjf :查看連同一部分進程樹狀態


cd /home :進入'/ home'目錄
cd .. :返回上一級目錄  
cd ../.. :返回上兩級目錄  
cd :進入個人的主目錄  
cd ~user1 :進入個人的主目錄  
cd - :返回上次所在的目錄

ls :查看目錄中的文件  
ls -l :顯示文件和目錄的詳細資料  
ls -a :列出全部文件,包含隱藏文件
ls -R :連同子目錄的內容一起列出(遞歸列出),等於該目錄下的所有文件都會顯示出來   
ls [0-9] :顯示包含數字的文件名和目錄名

cp -a :將文件的特性一起復制
cp -p :連同文件的屬性一起復制,而非使用默認方式,與-a相似,常用於備份
cp -i :若目標文件已經存在時,在覆蓋時會先詢問操作的進行
cp -r :遞歸持續複製,用於目錄的複制行為
cp -u :目標文件與源文件有差異時才會復制

mv -f :force強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋
mv -i :若目標文件已經存在,就會詢問是否覆蓋
mv -u :若目標文件已經存在,且比目標文件新,才會更新

rm -f :就是force的意思,忽略不存在的文件,不會出現警告消息
rm -i :互動模式,在刪除前會詢問用戶是否操作
rm -r :遞歸刪除,最常用於目錄刪除,它是一個非常危險的參數

cat file1 :從第一個字節開始正向查看文件的內容  
tac file1 :從最後一行開始反向查看一個文件的內容  
cat -n file1 :標示文件的行數  
more file1 :查看一個長文件的內容  
head -n 2 file1 :查看一個文件的前兩行  
tail -n 2 file1 :查看一個文件的最後兩行  
tail -n + 1000 file1 :從1000行開始顯示,顯示1000行以後的
cat filename | head -n 3000 | tail -n +1000 :顯示1000行到3000行
cat filename | tail -n +3000 | head -n 1000 :從第3000行開始,顯示1000(即顯示3000~3999行)

find / -name file1 :從'/'開始進入根文件系統搜索文件和目錄  
find / -user user1 :搜索屬於用戶'user1'的文件和目錄  
find /usr/bin -type f -atime +100 :搜索在過去100天內未被使用過的執行文件  
find /usr/bin -type f -mtime -10 :搜索在10天內被創建或者修改過的文件  
whereis halt :顯示一個二進製文件、源碼或man的位置  
which halt :顯示一個二進製文件或可執行文件的完整路徑

find /var/mail/ -size +50M -exec rm {} \; :刪除大於50M的文件

ls -lh :顯示權限  
chmod ugo+rwx directory1 :設置目錄的所有人(u)、群組(g)以及其他人(o)以讀(r,4 )、寫(w,2)和執行(x,1 )的權限  
chmod go-rwx directory1 :刪除群組(g)與其他人(o)對目錄的讀寫執行權限

chown user1 file1 :改變一個文件的所有人屬性  
chown -R user1 directory1 :改變一個目錄的所有人屬性並同時改變改目錄下所有文件的屬性  
chown user1:group1 file1 :改變一個文件的所有人和群組屬性

chgrp group1 file1 :改變文件的群組

grep Aug /var/log /messages :在文件'/var/log/messages'中查找關鍵詞"Aug"  
grep ^Aug /var/log/messages :在文件'/var/log/messages'中查找以"Aug"開始的詞彙  
grep [0 -9] /var/log/messages :選擇'/var/log/messages'文件中所有包含數字的行  
grep Aug -R /var/log/*在目錄'/var/log' :及隨後的目錄中搜索字符串"Aug"  
sed 's/stringa1/stringa2/g' example.txt :將example.txt文件中的"string1"替換成"string2"  (取代/替換 文字)
sed '/^$/d' example.txt :從example.txt文件中刪除所有空白行

paste file1 file2 :合併兩個文件或兩欄的內容  
paste -d '+' file1 file2 :合併兩個文件或兩欄的內容,中間用"+"區分

sort file1 file2 :排序兩個文件的內容  
sort file1 file2 | uniq :取出兩個文件的並集(重複的行只保留一份)  
sort file1 file2 | uniq -u :刪除交集,留下其他的行  
sort file1 file2 | uniq -d :取出兩個文件的交集(只留下同時存在於兩個文件中的文件)

comm -1 file1 file2 :比較兩個文件的內容只刪除'file1'所包含的內容  
comm -2 file1 file2 :比較兩個文件的內容只刪除'file2'所包含的內容  
comm -3 file1 file2 :比較兩個文件的內容只刪除兩個文件共有的部分

tar
-c :新建打包文件
-t :查看打包文件的內容含有哪些文件名
-x :解打包或解壓縮的功能,可以搭配-C(大寫)指定解壓的目錄,注意-c,-t,-x不能同時出現在同一條命令中
-j :通過bzip2的支持進行壓縮/解壓縮
-z :通過gzip的支持進行壓縮/解壓縮
-v :在壓縮/解壓縮過程中,將正在處理的文件名顯示出來
-f filename :filename為要處理的文件
-C dir :指定壓縮/解壓縮的目錄dir 
壓縮:tar -jcv -f filename.tar.bz2要被處理的文件或目錄名稱
查詢:tar -jtv -f filename.tar.bz2 
解壓:tar -jxv -f filename.tar.bz2 -C欲解壓縮的目錄

bunzip2 file1.bz2 :解壓一個叫做'file1.bz2'的文件  
bzip2 file1 :壓縮一個叫做'file1'的文件  
gunzip file1.gz :解壓一個叫做'file1.gz'的文件  
gzip file1 :壓縮一個叫做'file1'的文件  
gzip - 9 file1 :最大程度壓縮  
rar a file1.rar test_file :創建一個叫做'file1.rar'的包  
rar a file1.rar file1 file2 dir1 :同時壓縮'file1', 'file2'以及目錄'dir1' 
rar x file1.rar :解壓rar包

zip file1.zip file1 :創建一個zip格式的壓縮包  
unzip file1.zip :解壓一個zip格式壓縮包  
zip -r file1.zip file1 file2 dir1 :將幾個文件和目錄同時壓縮成一個zip格式的壓縮包

shutdown -h now :關閉系統(1)  
init 0 :關閉系統(2)  
telinit 0 :關閉系統(3)  
shutdown -h hours:minutes & :按預定時間關閉系統  
shutdown -c :取消按預定時間關閉系統  
shutdown -r now :重啟( 1)  
reboot :重啟(2)  
logout :註銷  
time :測算一個命令(即程序)的執行時間

ps
-A :所有的進程均顯示出來
-a :不與terminal有關的所有進程
-u :有效用戶的相關進程
-x :一般與a參數一起使用,可列出較完整的信息
-l :較長,較詳細地將PID的信息列出
ps aux :查看系統所有的進程數據
ps ax :查看不與terminal有關的所有進程
ps -lA :查看系統所有的進程數據
ps axjf :查看連同一部分進程樹狀態

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *