[Linux] 命令行管理文件

目錄

FHS

文件路徑導航

ls命令

tree命令

stat命令

touch命令

命令行管理文件

mkdir命令

cp命令

mv命令

rm和rmdir命令

軟鏈接

硬鏈接

軟連接硬鏈接區別

shell擴展匹配文件


FHS

FHS采用樹形結構組織文件,定義了系統中每個區域的用途、所需要的最小構成的文件和目錄,同時還給出了例外處理與矛盾處理。

FHS定義了兩層規范:

  • 定義了/下面的各個目錄應該要放什么文件數據。例如/etc應該要放置設置文件,/bin與/sbin則應該要放置可執行文件等等。

  • 針對/usr及/var這兩個目錄的子目錄來定義。例如/var/log放置系統登錄文件、/usr/share放置共享數據等等。

文件路徑導航

  • 顯示當前工作目錄
pwd

  • 切換路徑
cd

  • 切換到上一次所在目錄
cd -

  • 切換到家目錄
cd
#或
cd ~

  • 上一級目錄

  • ..表示

  • 在變量定義文件的路徑時,盡量使用絕對路徑

ls命令

  • -1:以單列格式展示

  • -R:遞歸查看子目錄中文件

  • -l:長列表格式查看文件詳細信息

  • ls命令默認按文件名先后順序正向排序,使用-r選項可以反向排序,-t按時間排序

  • -d:只查看對象本身

tree命令

安裝tree工具

yum install -y tree

使用tree

tree /etc/yum

  • 控制查看深度
tree -L 2 /home

stat命令

查看文件的元數據屬性

stat /etc/fstab

touch命令

如果文件不存在,則創建文件。當使用-c選項時,如果文件不存在,則不會創建文件。

其余選項可通過touch --help查看

命令行管理文件

mkdir命令

創建目錄。用-p選項可以創建多層目錄

cp命令

  • 復制單個文件到目標位置

  • 復制并重命名
cp /etc/hosts ./hosts-1

注意:

  1. 若當前目錄下有同名文件,不會提示,直接覆蓋。

  2. 復制多個文件時,目標只能是目錄

  • -r:復制目錄

  1. 復制多個目錄,目標必須是已經存在的目錄

  2. 當前目錄下有同名目錄,則將源目錄放到相同目錄下面,而不是覆蓋當前目錄

mv命令

  • 移動單個文件
mv hosts-1 ../lab1

移動多個文件,目標位置只能是目錄

  • 重命名
mv hosts hosts-new

  • 移動單個或多個目錄
#移動單個
mv etc ../lab1#移動多個
mv home/ yum/ yum-1/ ../lab1

rm和rmdir命令

  • 刪除文件
rm hosts-new

-f選項可直接刪除

  • rmdir可刪除空目錄,但無法刪除非空目錄

-r選項可遞歸刪除目錄,-fr:遞歸強制刪除目錄

軟鏈接

  • 軟鏈接: 類似于windows中快捷方式,也是一種文件;用于存放源文件的路徑(位置+名字),應用最多.

查看鏈接文件

 ll /etc/rc.local
 lrwxrwxrwx. 1 root root 13 Mar  7  2024 /etc/rc.local -> rc.d/rc.local
 
 rc.d/rc.local的位置在/etc/rc.d/rc.local 可以打開/etc/rc.local文件查看到
  • ln(link)創建軟連接或硬鏈接,默認創建硬鏈接.

  • 創建軟連接 :ln -s 源文件 軟鏈接文件

 #準備新的環境 new目錄
 mkdir -p /dir0/new
 cd /dir0/new/
 #創建源文件
 touch test.txt
 [root@boot new]# ll
 total 0
 -rw-r--r--. 1 root root 0 Nov 17 14:01 test.txt
 #創建軟連接
 [root@boot new]# ln -s test.txt stest.txt
 [root@boot new]# ll
 total 0
 lrwxrwxrwx. 1 root root 8 Nov 17 14:06 stext.txt -> test.txt#可以發現軟連接指向源文件
 -rw-r--r--. 1 root root 0 Nov 17 14:01 test.txt
 #從源文件位置寫入內容
 [root@boot new]# echo 'aaa' >> test.txt 
 [root@boot new]# cat stext.txt 
 aaa
 [root@boot new]# cat test.txt 
 aaa
 #從軟連接位置寫入內容
 [root@boot new]# echo 'bbb' >> stext.txt 
 [root@boot new]# cat stext.txt 
 aaa
 bbb
 [root@boot new]# cat test.txt 
 aaa
 bbb
 #建議使用絕對路徑創建軟連接
 #創建絕對路徑的軟連接
 ln -s /dir0/new/test.txt   stest.txt
 #因為這樣鏈接文件即使移動后能被找到,可以移動stest.txt試試

如果源文件被刪除或改名或移動走,軟連接會如何? 答:會紅色閃爍

硬鏈接

  • 硬鏈接: 在同一個分區中,不同的文件的inode號碼相同了,這些文件互為硬鏈接,很少使用.

硬鏈接

 #創建新的實驗文件ytest.txt
 [root@boot new]# touch ytest.txt
 #給新文件創建硬鏈接
 [root@boot new]# ln ytest.txt ytest.txt_head
 [root@boot new]# ll
 #可以發現硬鏈接并沒有顯示l,我們可以發現ytest.txt與ytest.txt_head硬鏈接數量變為2了
 total 4
 -rw-r--r--. 1 root root 8 Nov 17 14:07 test.txt
 -rw-r--r--. 2 root root 0 Nov 17 14:18 ytest.txt
 -rw-r--r--. 2 root root 0 Nov 17 14:18 ytest.txt_head
 #可以通過ll -i 查看,發現兩個文件inode是相同的
 [root@boot new]# ll -i
 total 4
 13662 -rw-r--r--. 1 root root 8 Nov 17 14:07 test.txt
 13664 -rw-r--r--. 2 root root 0 Nov 17 14:18 ytest.txt
 13664 -rw-r--r--. 2 root root 0 Nov 17 14:18 ytest.txt_head
 #再通過兩個文件中分別加入內容是與軟鏈接的效果一致的

軟連接硬鏈接區別

  • 解釋

  • 軟連接(符號鏈接) softlink/symlink,類似于windows快捷方式,存放源文件的位置。

  • 硬鏈接: 同一個分區中inode號碼相同的文件,互為硬鏈接。

  • 創建

  • 軟連接通過ln -s創建

  • 硬鏈接通過ln創建。

  • 特點

  • 軟鏈接是比較常用的,可以給文件,目錄創建。

  • 硬鏈接只能給文件創建,不能跨分區,無法給目錄創建硬鏈接,較少使用。

shell擴展匹配文件

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/86442.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/86442.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/86442.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自動化過程中,如何定位一閃而過的toast?

MutationObserver實戰:動態捕獲頁面Toast消息的終極解決方案 一、代碼全景解析 const observer new MutationObserver((mutations) > {// 回調函數主體... });observer.observe(document.body, {childList: true,subtree: true });核心組件解析 組件作用重要…

基于 Three.js 的數字雨波紋效果技術解析

文章目錄 一、基礎環境搭建與 Three.js 引入?二、場景與相機設置?三、后期處理:光暈效果的實現?四、紋理創建:定制雨滴、波紋和水花外觀?五、粒子系統:模擬雨滴下落與交互?1,雨滴粒子系統?2,波紋與水花系統?六、動畫循環與交互響應?本文將深入剖析一段實現該效果的…

聯想拯救者R9000P 網卡 Realtek 8852CE Ubuntu/Mint linux 系統睡眠后,無線網卡失效

聯想拯救者R9000P 網卡型號 Realtek PCle GbE Family Controller Realtek 8852CE WiFi 6E PCI-E NIC 系統版本 Ubuntu 24.04 / mint 22.1 問題現象 rtw89_8852ce,Link is Down,xtal si not ready,mac init fail,xtal si not …

Java詳解LeetCode 熱題 100(26):LeetCode 142. 環形鏈表 II(Linked List Cycle II)詳解

文章目錄 1. 題目描述1.1 鏈表節點定義 2. 理解題目2.1 問題可視化2.2 核心挑戰 3. 解法一:HashSet 標記訪問法3.1 算法思路3.2 Java代碼實現3.3 詳細執行過程演示3.4 執行結果示例3.5 復雜度分析3.6 優缺點分析 4. 解法二:Floyd 快慢指針法(…

安寶特科技丨Pixee Medical產品獲FDA認證 AR技術賦能骨科手術智能化

法國醫療科技企業Pixee Medical宣布,其研發的智能骨科手術導航系統 Knee NexSight 解決方案正式通過美國食品藥品監督管理局(FDA)510(k)認證,標志著增強現實(AR)技術在醫療領域的商業化應用邁出關鍵一步。 …

操作系統的概念,功能和目標

小懶來了! 操作系統學習正式開始,day1是小懶O! Using blogs to organize and understand knowledge is a good way, lets learn, operating systems Chapter 1,Lets look at it (一)預備知識 一.什么是接口 1.假設我…

STM32使用水位傳感器

1.1 介紹: 水位傳感器專為水深檢測而設計,可廣泛用于感應降雨,水位,甚至液體泄漏。當將水位傳感器放入水中時,水位沒過銅線越多模擬值越大,讀取水深傳感器模塊的模擬值,在串口打印出來&#xf…

Spring事務傳播機制有哪些?

導語: Spring事務傳播機制是后端面試中的必考知識點,特別容易出現在“項目細節挖掘”階段。面試官通過它來判斷你是否真正理解事務控制的本質與異常傳播機制。本文將從實戰與源碼角度出發,全面剖析Spring事務傳播機制,幫助你答得有…

相機Camera日志實例分析之一:相機Camx【前置慢動作分辨率切換720P、1080P錄制】單幀流程日志詳解

【關注我,后續持續新增專題博文,謝謝!!!】 上一篇我們講了: 這一篇我們開始講: 目錄 一、場景操作步驟 二、日志基礎關鍵字分級如下 三、場景日志如下: 一、場景操作步驟 1、打…

OpenHarmony標準系統-HDF框架之I2C驅動開發

文章目錄 引言I2C基礎知識概念和特性協議,四種信號組合 I2C調試手段硬件軟件 HDF框架下的I2C設備驅動案例描述驅動Dispatch驅動讀寫 總結 引言 I2C基礎知識 概念和特性 集成電路總線,由串網12C(1C、12C、Inter-Integrated Circuit BUS)行數據線SDA和串…

Ubuntu系統下交叉編譯openssl

一、參考資料 OpenSSL&&libcurl庫的交叉編譯 - hesetone - 博客園 二、準備工作 1. 編譯環境 宿主機:Ubuntu 20.04.6 LTSHost:ARM32位交叉編譯器:arm-linux-gnueabihf-gcc-11.1.0 2. 設置交叉編譯工具鏈 在交叉編譯之前&#x…

數據庫優化實戰分享:高頻場景下的性能調優技巧與案例解析

在實際開發與生產運維中,數據庫的性能瓶頸往往是影響系統響應速度和用戶體驗的關鍵因素。尤其是在高并發訪問、海量數據處理、復雜查詢邏輯等高頻場景下,數據庫優化不僅僅是“錦上添花”,更是“雪中送炭”。本篇博文將結合實際項目經驗&#…

Python importlib 動態加載

文章目錄 1. importlib 庫 概述2. 導入模塊(import_module())2.1. 導入已安裝的模塊2.2. 導入子模塊2.3 通過字符串變量導入模塊 3. 重新加載模塊(reload())4. 檢查模塊是否存在(find_spec())5. 獲取模塊路…

(1-6-4) Java IO流實現文件的讀取與寫入

目錄 0.前述概要 1. File類 1.1 概述 1.2 File的重要方法 1.3 java.io 1.3.1 四種抽象類 1.3.2 流 1.3.3 其他常用 I/O 流 2. 字節輸入流(InputSteam) 2.1 關系類圖 2.2 應用實現 3. 字節輸出流(OutputStream) 3.1 …

【Proteus仿真】【32單片機-A010】步進電機控制系統設計

目錄 一、主要功能 二、使用步驟 三、硬件資源 四、軟件設計 五、實驗現象 聯系作者 一、主要功能 1、LCD顯示當前擋位、方向等; 2、按鍵控制步進電機擋位、方向等。 二、使用步驟 系統運行后,LCD1602顯示當前擋位、方向; 通過按鍵…

DeepSeek-R1-0528-Qwen3-8B為底座微調領域大模型準備:制作領域專用數據集

前言 想要微調領域大模型,數據的準備是必不可少的。然而微調大模型需要的數據極多,這樣花費很多人力和準備。有沒有方便又高效的方法?一下子就可以準備大量的領域專用數據集呢? 制作領域專用數據集 這里制作的數據集格式為使用的aphaca格式的 1.啟動vllm服務 python -m…

WEB3全棧開發——面試專業技能點P6后端框架 / 微服務設計

一、Express Express是國內大部分公司重點問的。我在本文最后,單獨講解了Express框架。 概念介紹 Express 是基于 Node.js 平臺的極簡、靈活且廣泛使用的 Web 應用框架。它提供了一系列強大的功能,用于構建單頁、多頁及混合型的 Web 應用程序和 API 服…

游戲開發中的CI/CD優化案例:知名游戲公司Gearbox使用TeamCity簡化CI/CD流程

案例背景 關于Gearbox: Gearbox 是一家美國電子游戲公司,總部位于德克薩斯州弗里斯科,靠近達拉斯。Gearbox 成立于1999年,推出過多款史上最具代表性的視頻游戲,包括《半衰期》、《戰火兄弟連》以及《無主之地》。 團隊…

視覺slam--三維剛體運動

線性代數 外積與矩陣乘法的等價性 歐拉角的奇異性--萬向死鎖 現象 第二個軸旋轉度,會導致第三個旋轉軸和惡原始坐標軸的第一個旋轉軸重合,導致第一次旋轉與第三次旋轉都使用了同一個軸進行旋轉,也就是本質上旋轉三次,但是只在兩個…

內窺鏡檢查中基于提示的息肉分割|文獻速遞-深度學習醫療AI最新文獻

Title 題目 Prompt-based polyp segmentation during endoscopy 內窺鏡檢查中基于提示的息肉分割 01 文獻速遞介紹 以下是對這段英文內容的中文翻譯: ### 胃腸道癌癥的發病率呈上升趨勢,且有年輕化傾向(Bray等人,2018&#x…