Linux文件管理(下)

2020-12-23 黑馬程式設計師

一、文本處理命令

1、查看文件內容

①cat查看及合併

命令:cat

作用:查看文件內容

語法:#cat 文件名稱

#cat 文件1 文件2 > 文件3

用法一:cat文件名示例代碼:#cat 1.txt含義:顯示1.txt文件的內容特別注意:cat命令用於查看文件內容時,不論文件內容有多少,都會一次性顯示。如果文件非常大,那麼文件開頭的內容就看不到了。cat命令適合查看不太大的文件。

用法二:cat文件1文件2>文件3示例代碼:#cat 1.txt 2.txt > 3.txt含義:將1.txt和2.txt文件內容合併後,輸出到3.txt

②more分屏顯示文件

命令:more

作用:分屏查看文件

語法:#more 文件名

==流程:more在讀取文件時,默認已經加載文件的全部內容。==

用法一:more文件名示例代碼:#more /var/log/boot.log含義:分頁顯示/var/log/boot.log文件的內容

more 命令的執行會打開一個交互界面,下面是一些常用交互命令:

③less分屏顯示文件

命令:less

作用:分屏查看文件

語法:# less 文件名

==流程:不是加載整個文件,而是一點一點進行加載,相對而言,讀取大文件時,效率比較高。==

示例代碼:使用less命令查看/var/log/boot.log的文件內容

用法一:less文件名示例代碼:#less /var/log/boot.log含義:分頁顯示/var/log/boot.log文件的內容

less 命令的執行也會打開一個交互界面,下面是一些常用交互命令(和more相同):

cat,more,less三者的對比

④head顯示文件開頭

命令:head

作用:查看一個文件的前n 行,如果不指定n,則默認顯示前10 行。

語法:#head [參數選項] 文件名

常見參數:-n 表示顯示前n行的內容,n等於行數

用法一:head文件名示例代碼:#head /var/log/boot.log含義:顯示/var/log/boot.log文件的內容,默認為前10行用法二:head-n文件名示例代碼:#head -3 /var/log/boot.log含義:顯示/var/log/boot.log文件的前3行內容

⑤tail顯示文件結尾(重點)

命令:tail

作用:查看一個文件的最後n 行,如果n 不指定默認顯示最後10 行

語法:# tail -n 文件路徑 【n 表示數字】

常見參數:-n 顯示最後n行的內容,n等於行數

-f 輸出文件變化後新增加的數據

用法一:tail文件名示例代碼:#tail /var/log/boot.log含義:顯示/var/log/boot.log文件的內容,默認為最後10行用法二:tail-n文件名示例代碼:#tail -5 /var/log/boot.log含義:顯示/var/log/boot.log文件的最後5行內容

用法二:tail-f文件名示例代碼:#tail -f /var/log/messages含義:顯示/var/log/messages文件中,執行tail-f命令後,新增的數據。注意:作用相當於查看一個文件動態變化的內容,一般用於查看系統的日誌的變化按下ctrl+c可以退出查看狀態

注意:ctrl+c 鍵,在命令行中c 不再表示copy,而表示cancel(取消),在程序執行過程中,==通常都可以使用ctrl+c來終止程序運行或者退出程序==

2、統計文件信息

①wc統計文件內容數量

命令:wc,wc = word count

作用:用於統計文件內容信息(包含行數、單詞數、字節數)

語法:# wc [參數選項] 文件名

常見參數:

-l:表示lines,行數(以回車/換行符為標準)

-w:表示words,單詞數 依照空格來判斷單詞數量

-c:表示bytes, 字節數(空格,回車,換行)

用法一:wc-lwc文件名示例代碼:#wc -lwc /var/log/boot.log含義:統計/var/log/boot.log文件的行數,單詞數,字節數注意:wc命令選項可以混在一起搭配使用,但選項的順序不影響輸出結果,第一個是行數,第二個是單詞數,第三個數字節數。

②du統計文件大小

命令:du

作用:查看文件或目錄(會遞歸顯示子目錄)佔用磁碟空間大小

語法:# du [參數選項] 文件名或目錄名

常見參數:-s :summaries,只顯示匯總的大小,統計文件夾的大小

-h:表示以高可讀性的形式進行顯示,如果不寫-h,默認以KB的形式顯示文件大小

用法一:du文件名示例代碼:#du /var/log/boot.log含義:統計/var/log/boot.log文件的大小用法二:du-h文件名示例代碼:#du -h /var/log/boot.log含義:統計/var/log/boot.log文件的大小,以高可讀性顯示

示例代碼:統計 /var/log 目錄大小

用法三:du目錄名示例代碼:#du /var/log/含義:統計/var/log/目錄的大小,包含目錄下每一個單獨文件的大小用法四:du-s目錄名示例代碼:#du -s /var/log/含義:統計/var/log/boot.log文件的大小,匯總只顯示目錄大小用法五:du-sh目錄名示例代碼:#du -sh /var/log/含義:統計/var/log/boot.log文件的大小,匯總只顯示目錄大小,並採用高可讀性

3、文本處理

①find文件查找(重點)

命令:find

作用:用於查找文檔(其選項有55 個之多)

語法:# find 路徑範圍 選項1 選項1的值 [選項2 選項2 的值…]

常用參數:

-name:按照文檔名稱進行搜索(支持模糊搜索)

* : 通配符,匹配任意個任意字符

-type:按照文檔的類型進行搜索,文檔類型的值,f(file)表示文件,d(directory)表示文件夾

用法一:find路徑範圍選項1選項1的值選項2選項2的值示例代碼:#find /var/ -name boot.log -type f含義:在/var/目錄下,查找名稱等於boot.log,類型是文件的文檔

A var表示要查找的目錄名字

B var表示,在var目錄內查找

用法二:find路徑範圍選項1選項1的值使用通配符選項2選項2的值示例代碼:#find /var/log -name "*.log" -type f含義:在/var/log目錄下,查找所有.log結尾,類型是文件的文檔,*.log需要用引號引起來。

用法一:find路徑範圍選項1選項1的值示例代碼:#find /var/log -type d含義:在/var/log目錄下,查找所有文件夾

②grep搜索文件內容 (重要)

命令:grep

作用:在文件中直接找到包含指定信息的那些行,並把這些信息顯示出來

語法:#grep 要查找的內容 文件名

用法一:grep查找的內容文件名示例代碼:#grep network boot.log含義:在boot.log文件中,查找包含network的行

用法二:grep查找的內容多個文件示例代碼:#grep network /var/log/*含義:在/var/log目錄下的所有文件中,查找包含network的行

③輸出重定向

場景:一般命令的輸出都會顯示在終端中,有些時候需要將一些命令的執行結果想要保存到文件中進行後續的分析/統計,則這時候需要使用到的輸出重定向技術。

>:標準輸出重定向 :覆蓋輸出,會覆蓋掉原先的文件內容

>>:追加重定向 :追加輸出,不會覆蓋原始文件內容,會在原始內容末尾繼續添加

語法:#有輸出的命令 重定向符號 文件名

用法一:使用>進行覆蓋輸出示例代碼:#ll > llroot.txt含義:將ll命令輸出的內容,寫入到llroot.txt文件中,如果llroot.txt文件中有其他內容,則先清空,在寫入注意:文件路徑中的文件可以是不存在的文件,例如llroot.txt可以不存在,執行命令時會自動創建這個文件

用法二:使用>>進行追加輸出示例代碼:#ll >> llroot.txt含義:將ll命令輸出的內容,追加寫入到llroot.txt文件中注意:文件路徑中的文件可以是不存在的文件,例如llroot.txt可以不存在,執行命令時會自動創建這個文件

相關焦點

  • Linux怎麼刪除文件夾及其下所有文件?
    Linux 系統有一點比不了 Windows 系統的就是操作不夠直觀,比如我想刪除伺服器上的某個文件夾,直接通過 FTP 連接上去刪除沒有權限,需要通過 putty 連接伺服器通過命令才能刪除。而 Linux 沒有回收站的說法,所以用命令刪除文件或文件夾都要格外小心,boke112 也是輸入刪除命令反覆確認後才敢按回車鍵刪除。為了以後刪除文件需要特意將 Linux 刪除文件夾及其下所有文件的命令分享給大家。登錄 Linux 系統後刪除文件夾好像有幾種情況,還分在當前目錄或不在當前目錄,boke112 分享的命令就是成功登錄 Linux 後直接輸入命令回車就能刪除。
  • vim+py文件構造linux後門
    下的標準輸入、輸出、錯誤重定向到套接字中並開啟一個shell,從而實現數據傳輸。這個一個簡單的python後門就實現了,但實際中,有很多伺服器是沒有安裝python應用的,那在沒有python應用的伺服器下就不能使用了麼?答案是可以使用,現如今的vim編輯器為了更好的支持python語言,默認是安裝了python擴展,通過vim的python擴展,也可以去啟動一個python程序。
  • 艾編程教程:Linux環境下MySQL安裝
    1、安裝文件下載1)可以通過分享的安裝包上傳到對應伺服器進行解壓安裝mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz (300MB+)2)通過線上服務直接下載wget-linux-glibc2.5-x86_64.tar.gz2、拷貝到相應目錄cp -R /usr/local/src/ mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz /usr/local/mysql3、安裝工具
  • 5款Linux最佳照片管理軟體
    digiKam 是主要針對 KDE 桌面環境開發的一款圖片管理應用,但在其它 Linux 桌面環境下一樣表現非常好,它集成了大量實用的功能,它可以雙嚮導入、組織、增強、搜索和導出您計算機中的數碼圖像。雖然功能強大,但工作起來還是非常流暢、絲滑,可以非常專業地對圖片進行處理和組織管理。
  • Linux下vi(vim)編輯器新手入門教程
    在一般的系統管理維護中vi就夠用,如果想使用代碼加亮的話可以使用vim。下面我們整理一下vi的使用教程:包含vi的基本介紹、使用模式、文件的打開關閉保存、插入文本或新建行、移動光標、刪除、恢復字符或行、搜索等等,算是一篇比較適合新手學習vi的教程。vi有3個模式:插入模式、命令模式、低行模式。
  • linux各個目錄代表什麼
    ,一些可執行文件普通用戶只具備較小的權限;(多數管理命令默認只有管理員可以使用)/srv:默認為空,主要用於存放一些軟體的配置文件,某些軟體可能會把配置文件默認存放在這個目錄下,多數都是/etc目錄下,此目錄沒有被具體的定義;/tftpboot:遠程啟動tftpserver的根目錄,這個目錄只有安裝了
  • linux下nginx 1.19.5安裝及配置使用
    百度搜索nginx,進入官網,下載linux下的版本文件2.通過Xftp工具,將Windows中下載的文件上傳到linux系統的磁碟中3.進入linux,使用命令終端進行依賴包安裝yum -y install gcc zlib zlib-devel pcre-devel
  • 從串口驅動到Linux驅動模型,想轉Linux的必會!
    因為在這個目錄中包含了所有linux系統中使用的外部設備。但是這裡並不是放的外部設備的驅動程序。這一點和常用的windows,dos作業系統不一樣。它實際上是一個訪問這些外部設備的埠。可以非常方便地去訪問這些外部設備,和訪問一個文件,一個目錄沒有任何區別。/etc:etc這個目錄是linux系統中最重要的目錄之一。在這個目錄下存放了系統管理時要用到的各種配置文件和子目錄。
  • linux系統中通過dos2unix命令轉換windows系統中編輯的文件
    使用過linux系統的朋友都知道,linux和windows換行符是不同的,Windows格式文件的換行符為\r\n ,而Unix&Linux文件的換行符為\n. dos2unix命令就是將dos文件轉換為unix、linux格式 ,其實就是dos2unix命令將文件中的\r\n 轉換為
  • 在 Linux 上體驗 Android File Transfer
    如果你正努力在 Ubuntu 上部署管理你的 Android 手機,你可能會想試試 Linux 的安卓文件傳輸助手 Android File Transfer 。實際上,這是 MacOS 上 Google Android File Transfer 的一個克隆(fork)版。它由 Qt 構建。傻瓜式的界面讓你可以輕鬆的在安卓手機和 Ubuntu 設備間傳送文件和文件夾。
  • 6 款 Linux 桌面中用戶體驗較佳的照片管理軟體
    digiKamdigiKam 是主要針對 KDE 桌面環境開發的一款圖片管理應用,但在其它 Linux 桌面環境下一樣表現非常好,它集成了大量實用的功能,它可以雙嚮導入、組織、增強、搜索和導出您計算機中的數碼圖像。雖然功能強大,但工作起來還是非常流暢、絲滑,可以非常專業地對圖片進行處理和組織管理。
  • linux 虛擬主機好嗎
    linux 虛擬主機好嗎?linux 虛擬主機是採用Linux系統搭建的虛擬主機,是企業和個人都非常喜歡使用的虛擬主機種類。運行穩定,對軟體的兼容遠超Windows系統。又由於代碼開源,即使linux不幸感染病毒,維護人員也容易查出運行異常之處,並加以解決。平時,linux系統也可利用自帶防火牆、入侵檢測和安全認證等工具及時修補漏洞,提高系統安全性。
  • 「linux命令詳解」lsof命令解析,教你一步打開所有文件
    對編程感興趣的可以私信我獲取資料簡介lsof(list open files)是一個列出當前系統打開文件的工具。在linux環境下,任何事物都以文件的形式存在,通過文件不僅僅可以訪問常規數據,還可以訪問網絡連接和硬體。
  • 《Linux就該這麼學》與《鳥哥的linux私房菜》哪個更適合初學者?
    時不時在一起聚會中也會說到一些關於linux的話題,談及關於linux「升級」話題時,一致的表示linux是一個「先苦後甜」系統。學習使用的時候非常難,但是一旦學習成功,那就是步入一馬平川之境界。期初學習看書推薦:《Linux就該這麼學》,《鳥哥的linux私房菜》、《Linux 內核設計與實現》……三本相比來說更推薦《Linux就該這麼學》,原因是言簡意賅,不像鳥哥那麼厚重看一半就閒置了……;後面是命令:man、date、wget、reboot……;再後面就是實驗:修改文件、修改文件權限、建立不同帳戶、帳戶間的切換……;「但是最重要的別不是這些表面的東西,而是你是否能夠徹底了解linux系統的思想
  • [Linux 底層]bootstrap移植裁剪及編譯
    bootstrap文件夾內容如下圖:在board/sama5d3_xplained目錄下,有官方的默認配置文件
  • 教你如何在 Linux 上劃分VLAN
    來源:Linux就該這麼學 地址:https://www.linuxprobe.com/linux-add-vlan.html 在某些場景中,我們希望在Linux伺服器(CentOS / RHEL)上的同一網卡分配來自不同VLAN的多個ip。
  • CentOS8.1 Linux網絡配置nmcli-Linux系統運維實戰系列五
    網絡配置與管理nmcli網卡配置文件:/etc/sysconfig/network-scripts/ifcfg-網卡設備名1)CentOS7、8 Linux系統開始使用全新的nmcli網絡管理命令行工具管理網絡,同時此工具依賴
  • Linux內核學習:簡單的字符設備驅動
    ·下面是一個簡單字符設備示例,實現了基本的open、read和write方法:代碼文件:#include <linux/init.h>#include <linux/module.h>#include <linux/cdev.h>#include <linux/fs.h>#include <linux/uaccess.h>
  • Linux系統的Linux應該怎麼讀?正確讀法在這裡,很多人都讀錯了!
    1、linux發音五花八門版本頗多,見到和聽到的不下10種。根據linux的創始人Linus Torvalds的說法,Linux的發音和「Minix」是押韻的。3、有人綜合網上和linux自己的讀音,概括出幾個自認為最合適也最通用的讀法:/li'n^ks/(「裡那克斯」)或/'li:nэks/(「裡訥克斯」)或/li'nju:ks/(「裡紐克斯」)。4、這幾個應該是誰都聽得懂的。至於哪個比較正宗,當然是linux的原因。但事實上使用linux哪種讀法的人似乎都不在少數。
  • Linux系列(四)——linux常用命令
    logout 註銷指令在圖形運行級別無效,在 運行級別 3 下有效.3、用戶管理3.1、linux系統用戶說明10、組管理 和權限管理在 linux 中的每個用戶必須屬於一個組,不能獨立於組外。在 linux 中每個文件有所有者、所在組、其它組的概念所有者:默認是文件的創建者,可以修改所在組:默認是創建者所在的組,可以修改其他組:除了所有者和所在組的用戶外,系統的其他用戶所在的組就是文件的其他組。10.1、查看文件的所有者和所在組當某個用戶創建了一個文件後,默認這個文件的所在組就是該用戶所在的組。