Linux(ubuntu16.04)下的一些常用命令操作細節整理


# 本文整理了Linux(ubuntu16.04)上常用的大約幾十個命令,並講述了相關的操作細節:

# cd、pwd、ls、clear、mkdir、touch、rm、cp、mv、tree、chmod、find、grep、重定向>、ln 軟鏈接、硬鏈接 、壓縮zip tar 、exit 等等

----------------------------------------------------------------------------------------------------------------------------------

  • 1.touch 如果文件不存在則創建,如果文件已存在不會創建(覆蓋)

  • 2.mkdir 創建目錄 如果目錄和文件名重名:
      • 先存在文件或目錄,再創建目錄 —— 報錯:文件已存在,無法創建
        • 新建目錄的名稱不能與當前目錄中已有的目錄或文件同名
      • 先存在目錄,再touch同名文件,則不會報錯,也不會創建(覆蓋)存在的目錄
      • 可以遞歸創建目錄 mkdir 1/2/3/4/4 -p
        • 遞歸創建(新建)的目錄和子目錄可以重名

  • 3.rm 刪除指定的文件名
    • 如果指令后面接多個文件或目錄,則會刪除命令后所有文件的同時,提示:xxx不是文件;
    • 如果在上述命令后增加選項 -r ,則會刪除命令后面指定的文件或文件夾,但是提示:XXX文件不存在。
    • 提示:有報錯提示,但是不影響指令的執行
    • -r 遞歸地刪除目錄下的內容,刪除文件夾時必須加此參數
    • -f 強制刪除,忽略不存在的文件,無需提示
    • -i 以進行交互式方式執行

  • 5.查閱命令幫助信息:
    • “command” --help # eg: rm --help
    • man “command” # eg:man rm
      • man是manual的縮寫,和其配套的還有b,f,j,k,enter鍵,空格鍵,q(退出),\word # word是要查找的字符串

  • 6.cp 路徑/操作文件名 路徑/目標文件名
    • 文件名->文件名:如果目標文件名已經存在,則會覆蓋,這個和touch不同
    • 目錄->目錄:如果操作的是目錄名,則 操作的是該目錄內的所有內容
    • 目錄->目錄:如果操作的是目錄名,則 后面需要加選項 -r
    • 目錄->目錄:如果操作的是目錄名,則 后面必須也是一個目錄
    • 目錄->目錄:如果目標路徑不存在,則 創建路徑(目錄)
    • 文件名->目錄/文件名:目錄必須已經存在,否則報錯;
    • -a 該選項通常在復制目錄時使用,它保留鏈接、文件屬性,並遞歸地復制目錄,簡單而言,保持文件原有屬性。
    • -f 已經存在的目標文件而不提示
    • -i 交互式復制,在覆蓋目標文件之前將給出提示要求用戶確認
    • -r 若給出的源文件是目錄文件,則cp將遞歸復制該目錄下的所有子目錄和文件,目標文件必須為一個目錄名。
    • -v 顯示拷貝進度

  • 7.cd :切換目錄:
    • 后面不接參數和選項,則 切換到當前用戶的主目錄
    • cd . & cd .. & cd ~ & cd - ...

  • 8.mv : 移動、重命名
    • 操作路徑/文件名 -> 目標路徑/目標文件名
    • 如果目標路徑存在,則 移動文件,並將路徑后面的最有一個/后的內容作為新的文件名
    • 如果目標路徑不存在,則 報錯
    • -i 確認交互方式操作,如果mv操作將導致對已存在的目標文件的覆蓋,系統會詢問是否重寫,要求用戶回答以避免誤覆蓋文件
    • -f 禁止交互式操作,如有覆蓋也不會給出提示
    • -v 顯示移動進度

  • 9.重定向命令:> & >>
    • Linux允許將命令執行結果重定向到一個文件,本應顯示在終端上的內容保存到指定文件中。
    • 如:ls > test.txt ( test.txt 如果不存在,則創建,存在則覆蓋其內容 )
    • 所謂重定向:修改了默認的輸出(顯示)方向
    • 重定向可以用來合並文件
    • > 先清空后添加
    • >> 不清空,追加到文件的尾部

  • 10.1.cat 查看文件內容,直接顯示到終端
  • 10.2.more 分屏顯示
    • 查看內容時,在信息過長無法在一屏上顯示時,會出現快速滾屏,使得用戶無法看清文件的內容,此時可以使用more命令,每次只顯示一頁,按下空格鍵可以顯示下一頁,按下q鍵退出顯示,按下h鍵可以獲取幫助
  • 10.3.管道:|
    • 一個命令的輸出可以通過管道做為另一個命令的輸入。
    • ls -lh | more

  • 11.軟連接、硬鏈接:ln
    • 軟鏈接:軟鏈接不占用磁盤空間,源文件刪除則軟鏈接失效。
    • 硬鏈接:硬鏈接只能鏈接普通文件,不能鏈接目錄
    • 硬鏈接格式:ln 源文件 鏈接文件
    • 軟連接格式:ln -s 源文件 鏈接文件
    • 注意:如果軟鏈接文件和源文件不在同一個目錄,源文件要使用絕對路徑,不能使用相對路徑。
    • 涉及到在當前的文件夾查找文件名,如果相對路徑,之后又把文件移動到原來的位置還是可以用的。
    • 修改軟連接打開的文件的時候,對應的文件也會修改。
    • 修改硬鏈接打開的文件的時候,對應的原文件也會修改。
    • 修改源文件后,通過軟連接、硬鏈接打開都可以看到對應修改后的文件。
    • 修改源文件后,對應的多個軟、硬鏈接的文件都會跟着改變。
    • 硬鏈接是同一個文件內容,多個不同文件名,執行ll會顯示。

  • 12.查看或者合並文件內容:cat
    • 相對路徑查看
    • 絕對路徑查看
    • 合並:如:cat 1.txt 2.txt > 1_2.txt

  • 13.文本搜索:grep
    • grep一般格式為:grep [-選項] ‘搜索內容字符串’ 文件名
    • -v 顯示不包含匹配文本的所有行(相當於求反)
    • -n 顯示匹配行及行號
    • -i 忽略大小寫
    • grep搜索內容串可以是正則表達式

  • 14.查找文件:find
    • find -name "*.txt" : 查找當前目錄下以.txt結尾的文件
    • find -name /home/python "[0-9]" : 查找python目錄下的單個數字的文件夾或者文件
    • find -size +50k -size -5M : 查找當前目錄下文件大小在2k~5M的文件,注意這里k小寫;M大寫。
    • find ./ -perm 777 查找當前目錄下權限為777的文件或目錄

  • 15.歸檔管理:tar
    • tar使用格式 tar [參數] 打包文件名 文件
    • -c 生成檔案文件,創建打包文件
    • -v 列出歸檔解檔的詳細過程,顯示進度
    • -f 指定檔案文件名稱,f后面一定是.tar文件,所以必須放選項最后
    • -t 列出檔案中包含的文件
    • -x 解開檔案文件
    • 注意: 除了f需要放在參數的最后,其它參數的順序任意。
    • tar -cvf test.tar * : 將當前目錄內所有文件打包成文件名為test.tar
    • tar -xvf test.tar : 解壓剛才的文件。

  • 16.1. 文件壓縮解壓:gzip

    • tar與gzip命令結合使用實現文件打包、壓縮。 tar只負責打包文件,但不壓縮,用gzip壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz。
    • gzip格式:gzip [選項] 被壓縮文件
    • -d 解壓
    • -r 壓縮所有子目錄
    • gzip -r test.tar test.tar.gz
      • 可以簡寫:gzip test.tar
    • gzip -d test.tar.gz
      • 解壓縮,注意喲:下面的都是tar命令
    • tar這個命令並沒有壓縮的功能,它只是一個打包的命令,但是在tar命令中增加一個選項(-z)可以調用gzip實現了一個壓縮的功能,實行一個先打包后壓縮的過程。
    • 壓縮用法:tar cvzf 壓縮包包名 文件1 文件2 ...
    • -z :指定壓縮包的格式為:file.tar.gz
    • tar -zcvf test.tar.gz * : 將當前路徑下的所有文件以文件夾打包並壓縮到test.tar.gz文件中
    • 解壓格式: tar zxvf 壓縮包包名
    • tar -zxvf test.tar.gz : 解壓到當前路徑下
    • 解壓到指定目錄:-C (大寫字母“C”)
    • tar -zxvf test.tar.gz -C /home/python/Desktop : 解壓到桌面
  • 16.2. 文件壓縮解壓:bzip2

    • 壓縮用法:tar -jcvf 壓縮包包名 文件...(tar jcvf bk.tar.bz2 *.c)
    • 解壓用法:tar -jxvf 壓縮包包名 (tar jxvf bk.tar.bz2)
    • 總之,和上面用法在於 z --> j ,換一個選項
  • 16.3 文件壓縮解壓:zip、unzip

    • 通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名為zip。
    • 壓縮文件:zip [-r] 目標文件(沒有擴展名) 源文件
    • 解壓文件:unzip -d 解壓后目錄文件 壓縮文件
      • 目錄如果不存在會自動創建,如果放在當前目錄,則會出現各種交互式提示

  • 17.查看命令位置:which
    • 如果找到就顯示這個命令的路徑,否則不顯示

  • 18.修改文件權限:chmod
    • 字母法VS數字法
    • 字母法:chmod u/g/o/a +/-/= rwx 文件
    • u user 表示該文件的所有者
    • g group 表示與該文件的所有者屬於同一組( group )者,即用戶組
    • o other 表示其他以外的人
    • a all 表示這三者皆是
      • 增加權限
      • 撤銷權限
    • = 設定權限
    • r read 表示可讀取,對於一個目錄,如果沒有r權限,那么就意味着不能通過ls查看這個目錄的內容。
    • w write 表示可寫入,對於一個目錄,如果沒有w權限,那么就意味着不能在目錄下創建新的文件。
    • x excute 表示可執行,對於一個目錄,如果沒有x權限,那么就意味着不能通過cd進入這個目錄。
    • eg: chmod u+r,g-w,o=wrx 1.py : 對於1.py文件,user
    • eg: chmod u-w,g+r,o= 1.py
    • r 讀取權限,數字代號為 "4"
    • w 寫入權限,數字代號為 "2"
    • x 執行權限,數字代號為 "1"
    • - 不具任何權限,數字代號為 "0"
    • chmod u=rwx,g=rx,o=r filename 就等同於:chmod u=7,g=5,o=4 filename
    • 注意:如果想遞歸所有目錄加上相同權限,需要加上參數“ -R ”。 如:chmod 777 test/ -R 遞歸 test 目錄下所有文件加 777 權限

  • 19.1.切換到管理員賬號root

    • $ 表示普通用戶
    • # 表示管理員賬戶
    • whoami
    • sudo -s
  • 19.2.設置用戶密碼:passwd

    • 在Unix/Linux中,超級用戶可以使用passwd命令為普通用戶設置或修改用戶密碼。用戶也可以直接使用該命令來修改自己的密碼,而無需在命令后面使用用戶名。
  • 19.3. 退出登錄賬戶: exit

    • 如果是圖形界面,退出當前終端;
    • 如果是使用ssh遠程登錄,退出登陸賬戶;
    • 如果是切換后的登陸用戶,退出則返回上一個登陸賬號。
  • 19.4.查看登錄用戶:who

    • who命令用於查看當前所有登錄系統的用戶信息。
    • -q或--count : 只顯示用戶的登錄賬號和登錄用戶的數量
    • -u或--heading : 顯示列標題; 這個也是默認模式

  • 20.關機重啟:reboot、shutdown、init
    • reboot 重新啟動操作系統
    • shutdown –r now : 重新啟動操作系統,shutdown會給別的用戶提示
    • shutdown -h now : 立刻關機,其中now相當於時間為0的狀態
    • shutdown -h 24:12 : 系統在今天的24:12 會關機
    • shutdown -h +10 : 系統再過十分鍾后自動關機


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM