linux常用命令總結

linux命令的基本格式:命令 【選項】【參數】,如  cd -l anaconda3

  • ls:顯示當前目錄下的內容(list)

ls -a (all)顯示所有文件,包括隱藏的文件
ls -l 長格式顯示,顯示文件的詳細信息,文件大小是字節
ls -lh 字節的顯示格式:K:KB千字節,M:MB兆字節
  • cd:切換目錄(change directory)

cd / 根目錄
cd ~ home目錄
cd - 上次所在目錄
cd . 當前目錄
cd .. 上一目錄
pdw 査看當前所在的目錄
  • 絕對路徑vs相對路徑

絕對路徑:路徑是從根目錄開始一級一級指定的

相對路徑:從當前所在目錄開始切換目錄

  • mkdir:創建目錄(make directories )

  示例 作用
mkdir mkdir cangls 建立目錄
mkdir -p  mkdir -p movie/jp/cangls 遞歸建立目錄
  • rmdir:刪除空目錄(remove empty directories)

     
rmdir rmdir cangls 刪除空目錄cangls
rmdir -p rmdir -p movie/jp/cangls 遞歸刪除空目錄

注:只能刪除空目錄,一旦目錄中有內容就會報錯,故一般使用rm命令

  • touch:觸摸,用於修改文件的時間戳。如果文件不存在則會建立空文件,如果文件已存在則會修改文件的時間戳(change file timestamps)

      示例 作用
    touch  touch file 修改file文件是時間戳
    touch -a touch -a file 只修改文件的訪問時間
    touch -c touch  -c file 如果文件不存在,則不建立新文件

    touch  -d

    把文件的時間改爲指定的時間
    touch  -m touch  -m file 只修改文件的數據修改時間

     

注:linux中每個文件都有三個時間:訪問時間(access time),數據修改時間(modify time),狀態修改時間(change time)

在linux中, 文件沒有創建時間

不過,touch 命令只能人爲指定只修改訪問時間,或是隻修改數據修改時間,而不能指定只修改狀態修改時間。因爲不論是修改訪問時間,還是修改文件的數據時間,對文件來講,狀態都會發生改變,即狀態修改時間會隨之自動改變

  • stat:顯示文件或文件系統的詳細信息(display file or file system status)

      示例 作用
    stat stat file 查看文件的信息(含有時間戳)
    stat -f stat -f file 查看文件所在的文件系統信息
  • cat:查看文件的內容,即連接文件並打印輸出到標準輸出(concatenate files and print on the standard output)

    cat -A 相當於 -vET 選項的整合,用於列出所有隱藏符號;
    cat -E 列出每行結尾的回車符 $
    cat -n 顯示行號
    cat -T 把 Tab 鍵 ^I 顯示出來
    cat-V 列出特殊字符
    注:cat適應於查看小文件
  • more:分屏顯示文件(適用於大文件,功能類似cat)

  • head:查看文件的開頭(output the first part of files)

      示例 作用
    head head file 顯示文件開頭(默認開頭10行)
    head -n head -n 20 file or head -20 file 顯示文件開頭20行
    head -v head -v file 顯示文件名
  • tail 顯示文件的結尾(output the last part of files)

  示例 作用
tail tail file 顯示文件結尾(默認10行)
tail -n tail -n 20 file  or tail -20 file 顯示文件定義行數的結尾
tail -f tail -f file 監聽文件的新增內容,光標不會退出命令,會一直監聽文件的結尾處,等待顯示新增內容
  • rm:強大的刪除命令,可以刪除文件和目錄(remove files or directories)。

rm  刪除

rm -f 

強制刪除(force)
rm -i 交互刪除,在刪除之前會詢問用戶
rm -r 遞歸刪除,可以刪除目錄
rm -rf 最常用,可強制刪除文件和目錄

 

  • cp:複製,可複製文件和目錄(copy files and directories) 

  • 命令格式:cp [選項] 源文件 目標文件

  1. 複製文件:cp bols  /tmp/
  2. 複製目錄:cp -r /test/  /test_copy/
  • mv:剪切,可剪切文件和目錄。命令格式:mv [選項] 源文件 目標文件

    mv -f 強制覆蓋,如果目標文件已經存在,則不詢問,直接強制覆蓋;
    mv -i 交互移動,如果目標文件已經存在,則詢問用戶是否覆蓋(默認選項)
    mv -n 如果目標文件已經存在,則不會覆蓋移動,而且不詢問用戶;
    mv -v 顯示詳細信息;
  • linux文件的權限:

  1. 所有者:文件的建立者

  2. 所屬組:所屬的用戶組

  3. 其他人:其他的人

  • linux文件的權限位

  1. 第1位:文件類型。例如:
    “-” 普通文件
    “c” 字符設備文件。這也是特殊設備文件,輸入設備一般都是這種文件,如鼠標、鍵盤d等
    “d” 目錄文件。Linux 中一切皆文件,所以目錄也是文件的一種。
  2. 2~4位:文件所有者的權限
    r read,讀取權限
    w write,寫權限
    x execute,執行權限
    - 如果有上述字母,則代表擁有對應的權限;如果是"-",則代表沒有對應的權限
  3. 5~7位:文件所屬組的權限。同上
  4. 8~10位:其他人的權限。同上
  • chmod:修改權限(change mode)。命令格式:chmod [選項] 權限模式 文件名

  1. 選項:
    -R 遞歸設置權限,也就是給子目錄中的所有文件設定權限
  2. 權限模式:【用戶身份】【賦予方式】【權限】

  3. 用戶身份:

    u 所有者user
    g 所屬組group
    o 其他other
    a 所有身份all
  4. 賦予方式

    + 加入權限
    - 減去權限
    = 直接設置權限,用着方便
  5. 權限

    r 讀取
    w
    x 執行execute
  6. 舉例:chmod u+x file  #將file文件的所有者加入執行權限;  chmod g+w,o-w  file#給多個身份同時加入權限     chmod u=rwx,g=rw,o=rw file #直接通過“=”設置權限(注:注意兩個權限之間的逗號)

  • 權限對文件的作用。

  1. -讀(r):對文件有讀(r)權限,代表可以讀取文件中的數據。如果把權限對應到命令上,那麼一旦對文件有讀(r)權限,就可以對文件執行 cat、more、less、head、tail 等文件查看命令。
  2. -寫(w):對文件有寫(w)權限,代表可以修改文件中的數據。如果把權限對應到命令上,那麼一旦對文件有寫(w)權限,就可以對文件執行 vim、echo 等修改文件數據的命令。注意,對文件有寫權限,是不能刪除文件本身的,只能修改文件中的數據。如果要想刪除文件,則需要對文件的上級目錄擁有寫權限。
  3. -執行(x):對文件有執行(x)權限,代表文件擁有了執行權限,可以運行。在 Linux 中,只要文件有執行(x)權限,這個文件就是執行文件了。只是這個文件到底能不能正確執行,不僅需要執行(x)權限,還要看文件中的代碼是不是正確的語言代碼。對文件來說,執行(x)權限是最高權限。
  • 權限對目錄的作用

  1. -讀(r):對目錄有讀 (r)權限,代表可以查看目錄下的內容,也就是可以查看目錄下有哪些子文件和子目錄。如果把權限對應到命令上,那麼一旦對目錄擁有了讀(r)權限,就可以在目錄下執行 ls 命令,查看目錄下的內容了。
  2. -寫(w):對目錄有寫(r)權限,代表可以修改目錄下的數據,也就是可以在目錄中新建、刪除、複製、剪切子文件或子目錄。如果把權限對應到命令上,那麼一旦對目錄擁有了寫(w)權限,就可以在目錄下執行 touch、rm、cp、mv 命令。對目錄來說,寫(w)權限是最高權限。
  3. -執行(x):目錄是不能運行的,那麼對目錄擁有執行(x)權限,代表可以進入目錄。如果把權限對應到命令上,那麼一旦對目錄擁有了執行(x)權限,就可以對目錄執行 cd 命令,進入目錄。
  • chown:修改文件和目錄的所有者和所屬組(change file owner and group)

  1. 修改文件所有者:chown user file #file文件原所有者是zongyu,現在修改爲user
  2. 修改文件的所屬組:chown user:uesr file #將file文件的所有者改爲user,所屬組改爲user。注:在 Linux 中,每個用戶建立之後(如zongyu),都會建立和用戶名同名的用戶組,作爲這個用戶的初始組
  • chgrp:修改文件和目錄的所屬組(change group ownership)

  1. chgrp uesr file  # 修改file文件的所屬組爲user用戶組
  • umask:查看和設置linux系統中文件和目錄的默認初始權限

  1. umask -S:查看系統文件和目錄默認權限
  • linux查看命令幫助信息是幾個命令

  1. man 命令:最常用,可查看外部命令和shell內置命令是幫助。如:man ls
  2. info 命令 :  info命令的幫助信息是一套完整的資料,每個單獨命令的幫助信息只是這套完整資料中的某一個小章節。大家可以把 info 幫助信息看成一部獨立的電子書,所以每個命令的幫助信息都會和書籍一樣,擁有章節編號
  3. help 命令:只能獲取shell內置命令的幫助 (但在 Linux 中絕大多數命令是外部命令,所以 help 命令的作用非常有限)
  4. --help選項: 絕大多數命令都可以使用"--help"選項來査看幫助,這種方法非常簡單,輸出的幫助信息基本上是 man 命令的信息簡要版。如:ls --help
  • whereis:搜索系統命令,而不能搜索普通文件

whereis  不僅可以搜索二進制命令,還可以找到命令的幫助文檔的位置。
whereis -b 只搜索二進制命令
whereis-m 只搜索幫助文檔
  • which:也是搜索系統命令的命令

  1. 和 whereis 命令的區別在於,whereis 命令可以在查找到二進制命令的同時,查找到幫助文檔的位置;而which命令在查找到二進制命令的同時,如果這個命令有別名,則還可以找到別名命令.如:which ls

  • locate:按照文件名搜索普通文件(find files by name)

  1. 基本用法:locate file
  2. 注:因爲 locate 命令不會直接搜索硬盤空間,而會先建立 locate 數據庫,然後在數據庫中按照文件名進行搜索,是快速的搜索命令。(這樣做的好處是耗費系統資源小、搜索速度快;缺點是不是實時更新的,而要等用戶退出登錄或重啓系統時,locate 數據庫纔會更新)所以我們無法查找到新建立的文件。可通過updatedb命令更新數據庫,這樣locate就可以搜索到了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章