解析CentOS 7中系統文件與目錄管理

来源:https://www.cnblogs.com/SiceLc/archive/2019/10/10/11647529.html
-Advertisement-
Play Games

本篇文章主要講解Linux系統目錄結構,查看目錄與文件命令... ...


Linux目錄結構

Linux目錄結構是樹形的目錄結構

根目錄

  • 所有分區、目錄、文件等的位置起點

  • 整個樹形目錄結構中,使用獨立的一個“/”表示

常見的子目錄

目錄 目錄名稱 目錄 目錄名稱
/root 管理員家目錄 /bin 所有用戶可執行命令文件目錄
/boot 系統內核、啟動文件目錄 /dev 設備文件
/etc 配置文件 /home 用戶家文件目錄
/var 變數文件(日誌文件) /usr 用戶應用程式文件目錄
/sbin 管理員可執行的管理命令 /proc 硬體信息存放目錄

查看及檢索文件命令

cat命令

  • cat命令:顯示並連接文件內容

  • 格式

​ cat [選項] 文件名 …

[root@localhost ~]# cat /mnt/tast02.txt          //輸入命令,查看文件內容
this is tast02                                   //顯示文件內容
[root@localhost ~]#

more 和 less 命令

  • more命令:全屏方式分頁顯示文件內容(當閱讀完時自動退出閱讀模式,不可直接回看)

  • 格式

​ more [選項] 文件名 ...

  • 交互操作方法

    按Enter鍵向下逐行滾動

    按空格鍵向下翻一屏

    按b鍵向上翻一屏

    按q鍵退出

[root@localhost ~]# more /etc/httpd/conf/httpd.conf 
#
# This is the main Apache HTTP server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/2.4/> for detailed information.
# In particular, see 
# <URL:http://httpd.apache.org/docs/2.4/mod/directives.html>
# for a discussion of each configuration directive.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online docs. You have been warned.  
#
# Configuration and logfile names: If the filenames you specify for many
# of the server's control files beg...//以下省略內容...
  • less命令:與more命令相同,但擴展功能更過(閱讀結束後可向上翻頁,繼續閱讀)

  • 格式

    less [選項] 文件名 ...

  • 交互操作方法

    page up 向上翻頁

    page down 向下翻頁

    “/”鍵查找內容

    “n”下一個內容

    “N”上一個內容

    其他功能與more命令基本類似

[root@localhost ~]# less /etc/httpd/conf/httpd.conf 
#
# This is the main Apache HTTP server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/2.4/> for detailed information.
# In particular, see 
# <URL:http://httpd.apache.org/docs/2.4/mod/directives.html>
# for a discussion of each configuration directive.
#
# Do NOT simply read the instructions in here without understanding
# what they do.  They're here only as hints or reminders.  If you are unsure
# consult the online ...//以下省略內容...

head和tail命令

  • head命令:查看文件開頭部分內容(預設10行)

  • 格式

    head [選項] 文件名 ...

    命令字 選項 作用
    head 查看文件開頭一部分內容(預設10行)
    head -n(數字) 查看頭n行內容
    [root@localhost ~]# head /etc/passwd            //查看目錄文件頭10行內容
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    operator:x:11:0:operator:/root:/sbin/nologin   //查看目錄文件頭3行內容
    [root@localhost ~]# head -3 /etc/passwd       
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    
  • tail命令:查看文件結尾的少部分內容(預設為10行)

  • 格式

    tail [選項] 文件名 ...

    命令字 選項 作用
    tail 查看文件結尾的少部分內容(預設為10行)
    tail -n 查看結尾n行內容
    tail -f 跟蹤文件尾部內容的動態更新(在公共日誌等文件中用)
[root@localhost ~]# tail /etc/passwd                //查看目錄文件結尾10行內容
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
sun:x:1000:1000:sun:/home/sun:/bin/bash
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
[root@localhost ~]# tail -3 /etc/passwd            //查看目錄文件結尾3行內容
tcpdump:x:72:72::/:/sbin/nologin
sun:x:1000:1000:sun:/home/sun:/bin/bash
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
[root@localhost ~]# 

統計文件內容命令

  • wc命令:統計文件中的單詞數量等信息

  • 格式

    wc [選項]... 目標文件 ...

    命令字 選項 作用
    wc 預設統計行數、單詞數、位元組數
    wc -l 統計行數
    wc -w 統計單詞個數
    wc -c 統計位元組數
[root@localhost ~]# wc /etc/httpd/conf/httpd.conf       //統計文件行數、單詞數、位元組數
  353  1801 11753 /etc/httpd/conf/httpd.conf            //顯示行數、單詞數、位元組數
[root@localhost ~]# wc -l /etc/httpd/conf/httpd.conf    //只統計文件行數
353 /etc/httpd/conf/httpd.conf                          //顯示行數
[root@localhost ~]# wc -w /etc/httpd/conf/httpd.conf    //只統計文件單詞數
1801 /etc/httpd/conf/httpd.conf                         //顯示單詞數
[root@localhost ~]# wc -c /etc/httpd/conf/httpd.conf    //只統計文件位元組數
11753 /etc/httpd/conf/httpd.conf                        //顯示位元組數
[root@localhost ~]# 

檢索和過濾文件內容命令

  • grep命令:在文件中查找並顯示包含指定字元串的行

  • 格式

    grep [選項] 查找條件 目標文件

    命令字 選項 作用
    grep 在目錄中查找文件(正向查找,查找我們需要的信息)
    grep -i 查找時忽略大小寫
    grep -v 反轉查找,輸出與查找條件不相符的行
  • 查找條件設置

    要查找的字元串以雙引號括起來

    “^……“表示以……開頭,”……$‘表示以……結尾

    “^$”表示空行

[root@localhost ~]# grep "ftp" /etc/passwd        //在passwd中查找“ftp”文件
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin       //查找出的文件信息
[root@localhost ~]# cd /etc/httpd/conf            //進入到conf文件目錄
[root@localhost conf]# ls                         //查看目錄內配置文件
httpd.conf  magic                                 //顯示內容
[root@localhost conf]# grep -v "#" httpd.conf     //查找httpd.conf文件中不帶#的文件
ServerRoot "/etc/httpd"
Listen 80
Include conf.modules.d/*.conf
User apache
Group apache                                      //顯示查找的內容
ServerAdmin root@localhost
//以下省略...
[root@localhost conf]# grep "bash$" /etc/passwd  //在passwd文件中查找以bash為結尾
root:x:0:0:root:/root:/bin/bash                    的文件
sun:x:1000:1000:sun:/home/sun:/bin/bash          //顯示以bash為結尾的文件
[root@localhost conf]# grep "^n" /etc/passwd     //在passwd文件中查找以n為開頭的文件
nobody:x:99:99:Nobody:/:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin              //顯示以n為開頭的文件內容

使用壓縮和解壓縮工具

  • gzip命令與bzip2命令

    gzip 製作的壓縮文件預設的擴展名為“.gz”

    bzip2 製作的壓縮文件預設的擴展名為“.bz2“

    (gzip格式 bzip2格式 創建壓縮包或者解開壓縮包原文件會消失)

  • 格式

    命令字 選項 作用
    gzip/bzip2 -9 壓縮文件(命令字後面不輸入選項時預設為 ”-9”)
    gzip/bzip2 -d 解壓文件
[root@localhost conf]# cd /mnt                    //進入mnt文件目錄
[root@localhost mnt]# ls                          //查看目錄文件
demo02.txt  demo.jpg  tast01.txt  tast02.txt      //顯示目錄文件
[root@localhost mnt]# gzip -9 demo02.txt          //以gzip格式壓縮demo02文件
[root@localhost mnt]# ls                          //查看
demo02.txt.gz  demo.jpg  tast01.txt  tast02.txt   //demo02為gz格式壓縮文件
[root@localhost mnt]# gzip -d demo02.txt.gz       //解壓demo02
[root@localhost mnt]# ls                          //查看
demo02.txt  demo.jpg  tast01.txt  tast02.txt      //demo02解壓
[root@localhost mnt]# bzip2 -9 demo02.txt         //以bzip2格式壓縮demo02文件
[root@localhost mnt]# ls                          //查看
demo02.txt.bz2  demo.jpg  tast01.txt  tast02.txt  //demo02為bz2格式壓縮文件
[root@localhost mnt]# bzip2 -d demo02.txt.bz2     //解壓demo02
[root@localhost mnt]# ls                          //查看
demo02.txt  demo.jpg  tast01.txt  tast02.txt      //demo02解壓

歸檔命令

  • tar命令:製作歸檔文件、釋放歸檔文件

  • 格式

    tar [選項] .... 歸檔文件名 源文件或目錄

    tar [選項] ... 歸檔文件名 [-C 目標目錄]

    命令字- 選項 作用
    tar -c 創建壓縮包
    tar -x 解壓
    tar -v 顯示詳細信息
    tar -f 執行
    tar -p 保留原有許可權
    tar -t 查看壓縮包內容
    tar -C 解壓目標路徑
    tar -z gzip格式
    tar -j bzip2格式
[root@localhost mnt]# tar czvf demo.tar.gz demo02.txt tast01.txt 
demo02.txt                    //將demo02、tast02文件壓縮為gz格式的壓縮文件命令為demo
tast01.txt
[root@localhost mnt]# ls      //查看
demo02.txt  demo.jpg  demo.tar.gz  tast01.txt  tast02.txt  //顯示demo壓縮文件
[root@localhost mnt]# mkdir /data       //創建新文件夾data
[root@localhost mnt]# tar xzvf demo.tar.gz -C /data/
demo02.txt                    //將demo解壓到新建的data文件夾
tast01.txt
[root@localhost mnt]# cd /data      //進入data文件就夾
[root@localhost data]# ls           //查看
demo02.txt  tast01.txt              //顯示解壓內容

補充知識點

  • ">":重定向符號的應用(輸出重定向到一個文件或設備 覆蓋原來的文件)
  • “>>”:輸出重定向到一個文件或設備 追加原來的文件

  • “|”:管道符號(格式:命令A|命令B,即命令1的正確輸出作為命令B的操作對象)


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文介紹了Linux中用戶的相關操作(用戶增、刪以及組增、刪等),附加了文件與目錄的許可權與許可權操作 ...
  • ImageMagick安裝指令: 安裝完成後,輸入 命令就可以開始截圖。此時滑鼠圖標會變成小盒子狀,點擊屏幕上希望截屏的位置,ImageMagick就會在根目錄下生成一個名為screenshot.png的圖片。查看圖片可以輸入 命令。如要使用ImageMagick的自動截屏功能,可以輸入 命令,sl ...
  • 1、準備 例:兩台192.168.219.146(主), 192.168.219.147(從), 功能變數名稱www.panyangduola.com 主、從DNS伺服器均需要安裝bind、bind chroot、bind utils [^_^]: (This is a comment, it will n ...
  • 右擊此電腦圖標 選擇管理 服務和應用程式 服務 禁用system interface foundation service ...
  • 1、rhel7安裝aliyun下的epel源 ...
  • PuTTY可以遠程管理Linux。PuTTY官網:https://www.putty.org/ 一、使用PuTTY連接Centos7 下載安裝後,打開如下圖: 1.輸入主機名或IP地址2.埠號預設223.設置一個名稱4.點擊save會保存上面名稱和配置5.點擊open 進行連接,彈出下麵界面 輸入 ...
  • Linux 新手入門教程 1991年10月5日, Linus Torvalds 在互聯網上發佈消息,宣佈他自己開發的內核系統誕生了。他將內核源代碼保存在芬蘭最大的 FTP 網站上,命名為 Linux ,取義 ,並向全世界所有人公佈。這也使得10月5日成為一個特殊的日子,以致之後的許多 Linux 版 ...
  • 最近在測試某系統安裝包在各個環境下的安裝使用情況,在window7 下使用時,安裝完成iis後,發現.Net Framework 3.5 沒有自動勾選;命令沒有執行成功。 通過以下命令可以在window7 下打開 自帶的 .net framework 3.5.1(CMD 視窗內執行) dism /o ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...