常用 Linux 命令

来源:https://www.cnblogs.com/loveMis/archive/2022/12/20/16994389.html
-Advertisement-
Play Games

1. 查看當做操作目錄位置 > pwd2. 查看(當前)目錄裡邊的文件內容 > ls //list > ls -l 或ll //顯示文件的詳細信息 > ls -al //all顯示文件的詳細信息(包括隱藏文件) > ls -a //顯示目錄全部文件名字(包括隱藏文件) > ls [-al] 目錄 / ...


1. 查看當做操作目錄位置
    > pwd

2. 查看(當前)目錄裡邊的文件內容
    > ls                //list
    > ls  -l  或ll      //顯示文件的詳細信息
    > ls  -al           //all顯示文件的詳細信息(包括隱藏文件)
    > ls  -a            //顯示目錄全部文件名字(包括隱藏文件)
    > ls  [-al] 目錄    //查看指定目錄的文件信息

3. 目錄的切換
    > cd 目錄名字
    > cd ..   或 cd ../      //上級目錄切換
    > cd .    或 cd ./       //切換到當前目錄
    > cd ~    或 cd          //直接切換到用戶家目錄

4. 用戶切換
    > su -  或者 su - root       //切換到root超級管理員
    > su  普通用戶名             //切換到普通用戶
    > exit                      //退回到原用戶
    
    用戶切換時候會造成疊加效果,因此不要重覆su動作(su和exit配對使用)
    jinnan--->root--->jinnan--->root--->jinnan
    

5. 查看當前用戶是誰
    > whoami            //顯示當前正在操作系統的用戶
    > who am i          //顯示登錄系統的用戶信息(與su沒有關係)

6. 圖形界面 和 命令界面 切換
    ># init 3     //切換到 命令界面
    ># init 5     //切換到 圖形界面

7. 查看指令對應的可執行文件位置
    > which 指令     

8. 直接輸出文件內容到終端
    > cat  文件

9. 清空屏幕
    > clear

10. 目錄操作
    ① 創建目錄 make  directory
    > mkdir  目錄名稱                   //創建單個目錄
    > mkdir -p newdir1/newdir2/newdir3    //遞歸創建多級目錄
    > mkdir dir1/dir2/newdir
    > mkdir -p dir1/newdir2/newdir3
    新目錄的層次大於等於2個,就需要-p參數,
                等於1個,就不需要
    > mkdir  /home/jinnan/shandong      //相對根目錄的“絕對路徑方式”創建shandong目錄

    ② 移動目錄  move
    > mv  dir1       dir2           //dir1移動到dir2的目錄下
    > mv  dir1/dir2  dir3           //dir2移動到dir3的目錄下
    > mv  dir1/dir2  dir3/dir4      //dir2移動到dir4的目錄下
    > mv  /home/jinnan/beijing  /home/jinnan/shandong    //絕對路徑方式:beijing移動到shandong目錄下
    (移動到的目標目錄都是【存在的】)
    
    ③ 目錄改名字操作
    mv指令的第二個參數是新名字就是改名字操作
                        存在的名字就是移動操作
    mv是【移動 和 改名字】合併的指令
    > mv  dir1   newdir             //dir1移動到當前目錄下,並改名字為newdir
    > mv  dir1/dir2  dir3           //dir2移動到dir3目錄下,並改名字為 原名
    > mv  dir1/dir2  dir3/newdir    //dir2移動到dir3目錄下,並改名字為newdir

    ④ 複製(並改名字)操作 copy
    -R recursive遞歸的
    > cp -R dir1  dir2                //dir1複製到dir2下,並改名字為 原名
    > cp -R dir1/dir2  dir3/newdir    //dir2複製到dir3下,並改名字為 newdir
    > cp -R dir1/dir2  newdir         //dir2複製到當前目錄,並改名字為 newdir

    > cp  dir1/filea   dir2                 //filea複製到dir2下,並改名字為 原名
    > cp  dir1/filea   dir2/dir3/newfile    //filea複製到dir3下,並改名字為 newfile

    ⑤ 刪除操作 remove
    -f  force強制的
    > rm  file              //刪除file文件
    > rm -r  dir            //刪除目錄
    > rm -rf  filename      //遞歸強制刪除文件(目錄)

    > rm -rf /              //遞歸強制刪除"/斜杠"根目錄

11. 文件簡單操作
    ① 文件內容查看
    > cat  filename         //一次性把全部內容都輸出到終端
    > more  filename        //通過敲回車方式逐行查看文件內容
                            q鍵結束查看

    > less  filename        //"上下左右"鍵方式查看文件各部分內容(支持回看)
                            q鍵結束查看
    > head  -n  filename    //查看文件的前n行內容
    > tail  -n  filename    //查看文件的最後n行內容
    > wc  filename          //查看文件內容行數

    ② 創建文件
    > touch  filename                   //在當前目錄創建filename文件
    > touch  dir/filename               //在指定目錄下創建filename文件
    > touch  /home/jinnan/dir/newfile   //通過絕對路徑方式創建newfile文件

    ③ 給文件追加內容
    > echo 內容 > 文件          //把“內容”以覆蓋寫方式添加到文件中
    > echo 內容 >> 文件         //把“內容”以“追加”方式添加到文件中
    (使用以上兩個指令時,文件不存在會自動創建)

12. 用戶操作(創建、修改、刪除)
    對應配置文件:/etc/passwd
    ① 創建useradd
    ># useradd  -g  組編碼  -d  家目錄  -u  用戶編號  用戶名
    ># useradd  用戶名
    
    ② 修改usermod
    ># usermod -g 組別  -d  家目錄(手動創建)  -u 用戶編號 -l newname  用戶名

    ③ 刪除userdel
    ># userdel -r 用戶名    //刪除用戶信息同時“家目錄”也刪除

13. 組的操作(創建、修改、刪除)
    對應配置文件:/etc/group
    ① 創建groupadd
    ># groupadd  組名
    ② 修改groupmod
    ># groupmod -g 本身編號 -n  新名字 組名
    ③ 刪除groupdel(註意:組裡邊存在用戶信息禁止刪除)
    ># groupdel  組別

14. 查看指令可以使用的參數
    > man  指令


15. 許可權操作
    1) 字母相對方式設置許可權
    > chmod u+/-rwx,g+/-rwx,o+/-rwx  filename
    > chmod u+r,u-x filename
    > chmod +w,-x  filename
    > chmod u+rx  filename
    > chmod g-wx  filename

    組別每次可以設置一個或多個
    具體許可權(rwx)可以一次性設置一個或多個
    +/-增加、減少許可權需要分別設置
    可以統一為各個組別設置上統一的許可權
    普通用戶只能給自己"家目錄"的文件設置許可權。
    

    2) 數字絕對方式設置許可權
    讀: 4
    寫: 2
    執行:1

    0----->沒有許可權
    1----->執行 許可權
    2----->寫 許可權
    3----->寫、執行 許可權
    4----->讀 許可權
    5----->讀、執行 許可權
    6----->讀、寫 許可權
    7----->讀、寫、執行 許可權
    > chmod ABC  filename
        ABC是三個數字,分別代表主人、同組、其他組用戶許可權
    > chmod 642  passwd
        主人:讀、寫
        同組:讀
        其他:寫
    
    字母和數字兩種方式的取捨:
    ① 許可權修改【較少】使用字母方式
    ② 許可權修改【較多】使用數字方式

16. 在指定文件中搜尋內容
    > grep  被搜尋內容  文件
    被搜尋內容所在行的信息都會輸出
    > grep  stap   /etc/group   在group文件中搜尋stap字樣
    
17. find文件查找指令
    > find  被查找目錄  選項  選項值[ 選項  選項值 選項  選項值]
    具體選項:
        -name  文件名字     //直接根據文件名字查找文件
        > find  /  -name  passwd     //把系統全部目錄“遞歸”遍歷一次,進行passwd文件查找
        > find  ./  -name  "o*"     //在當前目錄下模糊查找o字元作為開始內容的文件名字

        -size  大小         //直接根據文件大小查找文件
        單位:預設512位元組
              100c  位元組單位(大小:100*1)
              12k   千位元組單位(大小:12*1024)
              35    512位元組(大小:35*512)
              5m    兆位元組(大小:5*1024*1024)
        
        範圍:+(大於)/-(小於)
        > find  ./  -size  23c    //找到大小為23位元組的文件
        > find  ./  -size  +7k    //找到大小大於7k的文件
        > find  ./  -size  -100c  //找到大小小於100位元組的文件

        -maxdepth  層次     //限制最深層次查找文件
        > find  /  -maxdepth  4  -name  passwd   //限制最深為4個目錄層次,進行passwd文件查找

        -mindepth  層次     //限制最淺層次查找文件

        -perm  許可權         //把符合某個許可權的文件給查找出來
        -user  主人名字     //通過主人查找文件
        -group 組名字       //通過組別查找文件
        -type  f/d          //根據“文件/目錄”查找
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 來源:https://juejin.cn/post/7123091045071454238 一個優秀的 Controller 層邏輯 說到 Controller,相信大家都不陌生,它可以很方便地對外提供數據介面。它的定位,我認為是「不可或缺的配角」。 說它不可或缺是因為無論是傳統的三層架構還是現在的 ...
  • 一. anaconda 簡介 Anaconda是一個開源的Python發行版本,用來管理Python相關的包,安裝Anaconda可以很方便的切換不同的環境,使用不同的深度學習框架開發項目。 二. anaconda 下載地址 anaconda 官網地址: https://www.anaconda.c ...
  • 代碼里我們經常會出現大量的條件判斷,在這種情況下,我們可以實現狀態機避免過度使用 有一種方式是把各種狀態歸為各種狀態類 還有一種方式是修改實例的__class__屬性 1 """ 2 狀態機的實現 3 修改實例的__class__屬性 4 """ 5 6 7 class Connection: 8 ...
  • JZ47 禮物的最大價值 描述 描述 在一個m\times nm×n的棋盤的每一格都放有一個禮物,每個禮物都有一定的價值(價值大於 0)。你可以從棋盤的左上角開始拿格子里的禮物,並每次向右或者向下移動一格、直到到達棋盤的右下角。給定一個棋盤及其上面的禮物的價值,請計算你最多能拿到多少價值的禮物? 如 ...
  • 面向對象 1.面向對象簡介 類(Class): 用來描述具有相同的屬性和方法的對象的集合。它定義了該集合中每個對象所共有的屬性和方法。對象是類的實例。 方法:類中定義的函數。 類變數:類變數在整個實例化的對象中是公用的。類變數定義在類中且在函數體之外。類變數通常不作為實例變數使用。 數據成員:類變數 ...
  • 一:背景 1.講故事 今天是🐏的第四天,頭終於不巨疼了,寫文章已經沒什麼問題,趕緊爬起來寫。 這個月初有位朋友找到我,說他的程式出現了CPU爆高,讓我幫忙看下怎麼回事,簡單分析了下有兩點比較有意思。 這是一個安全生產的信息管理平臺,第一次聽說,我的格局小了。 這是一個經典的 CPU 爆高問題,過往 ...
  • 一 引入 在設計設備界面時,經常會有一種需求,展示一個閥門,閥門有通斷兩種狀態: 二 CommonValveControl 考慮實現一個自定義控制項,CommonValveControl。 使用自定義控制項比用戶控制項更靈活,更具擴展性,可以使用不同的樣式和模板。 CommonValveControl定義 ...
  • 說明 基於微服務項目,產生的的多項目倉庫管理腳本。可直接保存 shell 腳本後酌情修改後試用 目錄結構 xxxx Xxx1Api/ Xxx2Api/ git_clone_api.sh git_branch_dev.sh git_pull_all.sh git_status.sh api-build ...
一周排行
    -Advertisement-
    Play Games
  • Timer是什麼 Timer 是一種用於創建定期粒度行為的機制。 與標準的 .NET System.Threading.Timer 類相似,Orleans 的 Timer 允許在一段時間後執行特定的操作,或者在特定的時間間隔內重覆執行操作。 它在分散式系統中具有重要作用,特別是在處理需要周期性執行的 ...
  • 前言 相信很多做WPF開發的小伙伴都遇到過表格類的需求,雖然現有的Grid控制項也能實現,但是使用起來的體驗感並不好,比如要實現一個Excel中的表格效果,估計你能想到的第一個方法就是套Border控制項,用這種方法你需要控制每個Border的邊框,並且在一堆Bordr中找到Grid.Row,Grid. ...
  • .NET C#程式啟動閃退,目錄導致的問題 這是第2次踩這個坑了,很小的編程細節,容易忽略,所以寫個博客,分享給大家。 1.第一次坑:是windows 系統把程式運行成服務,找不到配置文件,原因是以服務運行它的工作目錄是在C:\Windows\System32 2.本次坑:WPF桌面程式通過註冊表設 ...
  • 在分散式系統中,數據的持久化是至關重要的一環。 Orleans 7 引入了強大的持久化功能,使得在分散式環境下管理數據變得更加輕鬆和可靠。 本文將介紹什麼是 Orleans 7 的持久化,如何設置它以及相應的代碼示例。 什麼是 Orleans 7 的持久化? Orleans 7 的持久化是指將 Or ...
  • 前言 .NET Feature Management 是一個用於管理應用程式功能的庫,它可以幫助開發人員在應用程式中輕鬆地添加、移除和管理功能。使用 Feature Management,開發人員可以根據不同用戶、環境或其他條件來動態地控制應用程式中的功能。這使得開發人員可以更靈活地管理應用程式的功 ...
  • 在 WPF 應用程式中,拖放操作是實現用戶交互的重要組成部分。通過拖放操作,用戶可以輕鬆地將數據從一個位置移動到另一個位置,或者將控制項從一個容器移動到另一個容器。然而,WPF 中預設的拖放操作可能並不是那麼好用。為瞭解決這個問題,我們可以自定義一個 Panel 來實現更簡單的拖拽操作。 自定義 Pa ...
  • 在實際使用中,由於涉及到不同編程語言之間互相調用,導致C++ 中的OpenCV與C#中的OpenCvSharp 圖像數據在不同編程語言之間難以有效傳遞。在本文中我們將結合OpenCvSharp源碼實現原理,探究兩種數據之間的通信方式。 ...
  • 一、前言 這是一篇搭建許可權管理系統的系列文章。 隨著網路的發展,信息安全對應任何企業來說都越發的重要,而本系列文章將和大家一起一步一步搭建一個全新的許可權管理系統。 說明:由於搭建一個全新的項目過於繁瑣,所有作者將挑選核心代碼和核心思路進行分享。 二、技術選擇 三、開始設計 1、自主搭建vue前端和. ...
  • Csharper中的表達式樹 這節課來瞭解一下表示式樹是什麼? 在C#中,表達式樹是一種數據結構,它可以表示一些代碼塊,如Lambda表達式或查詢表達式。表達式樹使你能夠查看和操作數據,就像你可以查看和操作代碼一樣。它們通常用於創建動態查詢和解析表達式。 一、認識表達式樹 為什麼要這樣說?它和委托有 ...
  • 在使用Django等框架來操作MySQL時,實際上底層還是通過Python來操作的,首先需要安裝一個驅動程式,在Python3中,驅動程式有多種選擇,比如有pymysql以及mysqlclient等。使用pip命令安裝mysqlclient失敗應如何解決? 安裝的python版本說明 機器同時安裝了 ...