20個常用Linux命令

2021-09-26 03:14:06 字數 4716 閱讀 7799

20條linux命令
usage: ls  [option]...  [file]...
options:

-a 列出指定目錄下的所有檔案包括. 和…, 以及以.開頭的隱藏檔案。

-a 同上,但是不包括. 和 …。

–full-time 列出詳細的檔案修改時間

類似於: ls -l --time-style=full-iso

-h human-readable 以人性化的方式顯示檔案的大小

同 -l 或者 -s 引數。

-t 按修改時間排序,最新的放在最前面。

-l 以行的形式展現 ls -l = ll

-r –reverse 依相反次序排列

-r –recursive 同時列出所有子目錄層

-f 如果是目錄則後面要跟上/。

命令的引數可以組合使用,也可以單獨使用,配合其他命令能夠更好地檢視目錄下的內容:

如: (1)只顯示檔案

ls -l | grep 「^-」

(2)按時間排序,最新的放在最後

ls -ltr /home/edward

(3) 列出以t開頭的檔案或資料夾

ls -l t*

cd 切換到家目錄

cd ~ 切換到家目錄

cd - 切換到上一次的目錄,這個命令在兩個路徑沒有太大的聯絡,路徑名比較長的不方便切換的時候特別好用。比如當前你在/home/edward/desktop/stage4/meminfo目錄下,你需要到/dev/disk/by-id執行某些操作,而且需要在這兩個路徑之間反覆切換,這時候這個命令就很好用,你只需要第一次使用絕對路徑,之後使用cd - 就可以在這兩個路徑下反覆切換。

cd …(兩個點,不知道為什麼這裡顯示的是三個點) 切換到上一級目錄

cd path 切換到指定的目錄path下,可以是絕對路徑也可以是相對路徑。

usage: kdir [option]... directory...

options:

-m 設定許可權

-p parents 可以遞迴一次建立多級目錄

-v verbose 每次建立都有提示資訊

建立乙個專案的組織結構的時候需要使用到-p引數:

mkdir -vp scf/,logs/,service/deploy/}

-f force 強制刪除,忽略不存在的檔案,從不給出提示

-i interactive 互動式刪除

-r, -r 遞迴刪除

-v verbose 顯示操作的詳細資訊。

刪除前要確認目錄。 不能隨便執行的命令  rm * -rf。
rmdir 可以刪除空目錄,乙個目錄被刪之前必須是空的。

touch 修改實現戳或者建立乙個不存在的檔案。 

-t 使用指定的時間而非現在的時間

-m 只更改時間

vim 編輯檔案並且建立檔案, 只有最後儲存了檔案才建立成功。

重定向到目標檔案,不存在就建立, 注意是覆蓋(>)還是追加(>>)

mv [選項]   原始檔或目錄   目標檔案或目錄
-b :若需覆蓋檔案,則覆蓋前先行備份。

-f :force 強制的意思,如果目標檔案已經存在,不會詢問而直接覆蓋;

-i :若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋!

-u :若目標檔案已經存在,且 source 比較新,才會更新(update)

cat  檢視檔案或者把幾個檔案的內容連在一起顯示。

cat 的主要功能:

* 顯示乙個檔案 cat filename

-n 顯示行號

-b 對非空行顯示行號

* cat > filename 建立新檔案,並輸入內容, ctrl+c 結束輸入。

* cat file1 file2 file3 > filename 將多個檔案合併成乙個檔案。

nl 命令也可以檢視文字內容,不過它訂製了行號的顯示。

more 可以分頁檢視內容。

less less 與 more 類似,但使用 less 可以隨意瀏覽檔案,而 more 僅能向前移動,卻不能向後移動,而且 less 在檢視之前不會載入整個檔案。

less 支援瀏覽多個檔案 如 less filename1 filename2 filename3

輸入 :n 表示檢視下乙個檔案 next

:p 上乙個檔案 previous

head  顯示檔案的前幾行, 預設顯示10行。

-q 隱藏檔名

-v 顯示檔名

-c《位元組》 顯示位元組數

-n《行數》 顯示的行數 如顯示5行 -n 5

tail 用於顯示檔案末尾的內容。常用於檢視日誌,加-f 引數會不斷重新整理。看到最新的內容。

-f 迴圈讀取

-n《行數》 顯示行數

模擬迴圈讀取:

ping 127.0.0.1 > log.txt &

tail -f log.txt 就可以看到更新的資訊

方法:建立乙個檔名和路徑的乙個資料庫,之後要尋找只需要查詢這個資料庫就可以。資料庫一般在crontab中自動執行。新建的檔案可能找不到,因為資料庫一般是一周更新一次。

find在目錄結構中查詢檔案,並執行指定的操作。

usage: find pathname -options [-print -exec -ok …]

-print 標準輸出

-exec 執行shell 命令 , 格式為 comman \;

-ok 同-exec,只不過是以一種更安全的方式。

options:

-name 按名字查詢

-perm 按檔案許可權查詢

-user 按所屬使用者查詢

-group 按檔案所屬組查詢

-mtime -n +n 按檔案更改時間查詢 -n 表示距現在n天內, +n表示 n天之前

-size 按大小查詢

-type 按型別查詢

b - 塊裝置檔案。

d - 目錄。

c - 字元裝置檔案。

p - 管道檔案。

l - 符號鏈結檔案。

f - 普通檔案。

-exec 執行後續操作

comman \;

{} find查詢的檔名。以分號結束,必不可少。

eg: 查詢當前目錄下1.txt並顯示詳細資訊

find . -name 1.txt -exec ls -l {} \ ;

作用:打包和壓縮

usage: tar [必要引數] [選擇引數] [檔案]

-c 建立新的壓縮檔案

-r 新增檔案到已經壓縮的檔案

-x 從壓縮的檔案中提取檔案

-t 顯示壓縮檔案的內容

-z 支援gzip解壓檔案

-j 支援bzip2解壓檔案

-v 顯示操作過程

-f 指定壓縮檔案

打包檔案 tar -cvf name.tar file1 file2

解包 tar -xvf name.tar

打包後以gzip壓縮 tar -czvf name.tar.gz file1 file2

解壓縮 tar -zxvf name.tar.gz

檢視壓縮內容 tar -ztvf name.tar.gz

打包後以bzip2壓縮 tar -jcvf name.tar.bz2 file1 file2

解壓 tar -jxvf name.tar.bz2

檢視壓縮內容 tar -jtvf name.tar.bz2

修改對檔案或者目錄的訪問許可權
(1)文字設定法

u 表示使用者

g 表示所屬組

o 表示其他人

a 包含前三種

r 可讀 w 可寫 x 可執行

usage: chmod [who] [+ | - | =] mode filename

eg: chmod a+x filename 給所有人檔案的可執行許可權

(2)數字設定法

r=4 w=2 x=1

eg: 給所有者和所屬組可讀可寫可執行的許可權,其他人沒有許可權

chmod 770 filename

chgrp [選項] [組] [檔案]

-r 遞迴目錄

-v 顯示詳細資訊

df 檢視磁碟使用情況

du 檢視指定檔案或目錄的磁碟占用情況

-h human-readable

從本地複製到遠端伺服器:

scp local_file remote_user@remote_ip:remote_floder

從遠端拷貝到本地:

scp remote_user@remote_ip:source_path local_path

如果是遠端拷貝目錄的話需要加-r 引數

常用引數
-e 顯示所有程序

-aux 顯示所有包含其他使用者的行程

-i 忽略大小寫

-v 取反

-n 顯示行號

後台執行命令

1、脫離終端的方式在後台執行這個shell命令。

nohup shell-command &

2、命令之後直接加&

linux常用的20個命令

1 查詢檔案 find name filename.txt 根據名稱查詢 目錄下的filename.txt檔案 2.進入某個目錄 cd 加上目錄名 3.終止執行緒 kill 1998 終止執行緒號1998這個執行緒 4 顯示當前路徑 pwd5.檢視檔案 ls al 6.複製 cp aa 複製aa檔案...

linux最常用的20個命令(二)

11 file命令 該命令用於判斷接在file命令後的檔案的基本資料,因為在linux下檔案的型別並不是以後綴為分的,所以這個命令對我們來說就很有用了,它的用法非常簡單,基本語法如下 plain view plain copy file filename 例如 file test 12 tar命令 ...

Linux20個常用命令整理(基礎)

eg man ls 就可以檢視ls 相關的用法 注 按q 鍵或者ctrl c 退出,在linux 下可以使用ctrl c 終止當前程式執行。eg ls usr man ls l a.d 表示目錄 directory 如果是乙個 表示是檔案,如果 是l 則表示是乙個連線檔案 link b.表示檔案或者...