linux(1)文件管理

文章目錄

    • 文件目錄系統
    • 相對路徑
    • 絕對路徑
    • 命令解析器
    • 文件管理

文件目錄系統

  • bin: 二進制文件目錄,存儲可執行文件

  • dev:設備目錄,所有的硬件都會抽象成文件存儲,比如鼠標鍵盤

  • home:存儲普通用戶的家目錄

  • lib:存儲動態庫和靜態庫

  • mnt:臨時掛載點目錄,比如臨時U盤

  • proc:內存使用的一個映射目錄,給系統使用的

  • run:運行中給系統使用的

  • tmp:臨時目錄,存放臨時數據,重啟電腦會刪除

  • boot:存儲開機相關的設置

  • root:root用戶的家目錄

  • opt:第三方軟件的安裝目錄

  • var:存儲了系統使用的一些經常發生變化的目錄,比如日志文件

  • lost+found:一般是空的,非正常關機和系統崩潰會存儲臨時文件,用來恢復的目錄

  • snap:

  • sys

  • etc:存儲操作系統和軟件的配置文件

  • srv:

  • cdrom

  • media:和dev完全相同,可以選擇用來掛載一些長期的設備

  • sbin:root用戶使用的二進制可執行程序目錄

  • usr:系統資源目錄

    • usr/include:包含標準頭文件
    • usr/local:安裝第三方軟件
    • usr/src:源文件

相對路徑

  • ./:代表當前目錄也可以用**.**表示
  • …/:代表當前目錄的上一層目錄 可以用**…**表示

絕對路徑

起始目錄是根目錄 /

命令解析器

  1. 命令提示行

liyb@lyb:~$

  • liyb:用戶名
  • @:at 在
  • lyb:主機名
  • ~:當前用戶的家目錄,等于/home/l1yb
  • $: 當前用戶是普通用戶
  • #:當前用戶是root用戶
  1. 命令解析器

unix 系統使用的是shell

linux 系統重寫了shell,成為了bash

  1. 命令行快捷鍵

ctrl + a 光標移動到行首

ctrl + e 光標移動到行尾

ctrl + u 刪除光標前面的字符串

ctrl + k 刪除光標后面的字符串

文件管理

  1. cd
    • cd - :快速切換到上一次進入的目錄
  2. ls
參數含義
-a顯示隱藏文件
-l顯示文件詳細信息
-F如果是文件,會在文件名后面加/
-h人性化,文件大小顯示為K,M,G
-laFubuntu中等價于ll(參數之間可以一起使用)
  1. 文件類型
# 顯示文件的詳細信息
robin@OS:~$ ls -l
total 204
-rw-rw-r--  1 robin robin    268 Mar 22 17:32 a.c
drwxrwxr-x  2 robin robin   4096 Aug  4  2019 config
-rw-r--r--  1 robin robin 129487 Dec 25 11:28 english.txt
drwxrwxr-x  4 robin robin   4096 Jan 15 17:48 libevent
drwxrwxr-x 17 robin robin   4096 Apr 13 22:42 Linux
drwxrwxr-x  8 robin robin   4096 Feb  5 16:57 luffy
-rw-r--r--  1 robin robin   2223 Mar  2 14:39 main.cpp
-rw-rw-r--  1 robin robin   2167 Dec  1 22:41 mysql_test.c
drwxrwxr-x  9 robin robin   4096 Mar 26 19:19 network
-rw-r--r--  1 robin robin   1406 Mar  2 20:18 occi.cpp
drwxrwxr-x  3 robin robin   4096 Oct 30 12:09 oradiag_robin
drwxrwxr-x 11 robin robin   4096 Mar 26 09:40 package
drwxrwxr-x  2 robin robin   4096 Dec 29 17:11 process
drwxrwxr-x 17 robin robin   4096 Mar 29 22:31 projects
-rw-r--r--  1 robin robin   1816 Jan  6 09:37 sidtime.c
drwxrwxr-x  2 robin robin   4096 Mar 22 11:31 socket
-rw-r--r--  1 robin robin    583 Oct 18 17:21 test.c
-rw-r--r--  1 robin robin   2015 Mar  1 17:05 test.cpp
-rw-rw-r--  1 robin robin   2218 Dec  2 17:02 test_mysql.c
drwxrwxr-x  5 robin robin   4096 Jan 13 17:35 udp# 文件詳細信息介紹d      rwx       rwx     r-x     5    robin    robin    4096    Jan 13 17:35    udp|       |         |       |      |      |        |       |          |	          |
文件    文件所    文件所   其他人 硬鏈接  文件     文件   文件大小  文件修改時間     文件名
類型   有者權限  屬組權限  權限   計數   所有者   所屬組    作者: 蘇丙榅
鏈接: https://subingwen.cn/linux/file-commands/#2-2-%E6%98%BE%E7%A4%BA%E6%96%87%E4%BB%B6%E8%AF%A6%E7%BB%86%E4%BF%A1%E6%81%AF
來源: 愛編程的大丙
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
  1. 創建刪除目錄
  • mkdir 創建目錄
    • 創建單層目錄
    • mkdir /a/b/c -p 創建多層目錄
  • rmdir 刪除目錄(沒啥用)
    • 只能刪除單層目錄
  • rm 刪除
    • rm dirname -r 刪除目錄包括子目錄(-r 表示遞歸)
    • -i 刪除給提示
    • -f 強制刪除且不提示
    • i f一起用的時候,誰在后面誰生效
  1. cp 命令
# 文件拷貝
# cp 要拷貝的文件 目標文件(沒有的話會創建,已經存在的話會被覆蓋)# 目錄拷貝
# cp dir1 dir2 -r   有子目錄的話一定要加-r遞歸
#這種拷貝會把目錄名一起拷貝進去#如果只要目錄里的內容的話
cp dir1/* dir2 -r
  1. mv
# 文件移動  目標文件夾必須存在
mv a b c target/# 文件改名  目標文件必須不存在
mv tom.txt jerry.txt
mv temp/ tmp/# 文件覆蓋 文件存在且不是目錄
mv file1 file2 # file1會消失,覆蓋file2
  1. 查看文件內容
  • cat + filename

  • more + filename

    回車 : 向下一行

    空格:向下一頁

    b:上一頁

    q:退出

  • less + filename

  • head -行數 filename 前多少行

  • tail -行數 filename 后多少行

  1. 鏈接的創建
  • 軟鏈接
# ln -s 源文件路徑 軟鏈接文件名字
ln -s a.txt a.lnk # 移動以后失效
# 想要移動不失效需要使用絕對路徑
ln -s /home/l1yb/dir/a.txt aa.lnk
  • 硬鏈接
# ln 源文件 硬鏈接文件名字
ln a.txt b.txt # 相當于起別名,他們的引用計數一樣,指向同一塊磁盤空間

目錄不允許創建硬鏈接,文件不會發生拷貝,只是起別名

  1. 修改文件權限chmod

針對文件所有者、文件所有組、其他人

  • 文字設定法
# chmod who [+][-][=] mod filenamewho u : user -> 文件所有者g : group -> 文件所屬組o : other -> 其他人a : all -> 以上所有人- 對權限的操作+:添加權限-:去除權限=:權限的覆蓋- mod:權限r:讀w:寫x:執行權限-:無權限
chmod a=rwx a.txt
chmod u+x a.txt
chmod go-w a.txt
  • 數字設定法
# 語法格式: chmod [+|-|=] mod 文件名- 對權限的操作:+: 添加權限-: 去除權限=: 權限的覆蓋, 等號可以不寫- mod: 權限描述, 所有權限都放開是 7- 4: read, r- 2: write, w- 1: execute , x- 0: 沒有權限chmod 777 b.txt # 所有人的權限覆蓋為7
chmod -200 b.txt #去除文件所有者的寫權限
  1. 修改文件所有者chown

  2. 修改文件所有組chgrp

  3. tree

安裝:

sudo apt install tree
tree -L 1 # 顯示一層
tree -L 2 # 顯示兩層
tree -L 1 dir/  # 指定目錄顯示一層
  1. pwd 顯示當前目錄

  2. touch 創建新文件

  3. which 可執行程序在哪個目錄中

  4. 重定向命令

關鍵符 > 或者 >>

如果 > 后面的文件不存在,會創建

如果存在,就會覆蓋

>>不會覆蓋,表示追加,新的一行

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

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

相關文章

CSS—選擇器詳解:5分鐘動手掌握選擇器

個人博客:haichenyi.com。感謝關注 1. 目錄 1–目錄2–引言3–種類4–優先級 引言 什么是選擇器? CSS選擇器是CSS(層疊樣式表)中的一種規則,用于指定要應用樣式的HTML元素。它們就像是指向網頁中特定元素的指針&#…

大模型微調入門(Transformers + Pytorch)

目標 輸入:你是誰? 輸出:我們預訓練的名字。 訓練 為了性能好下載小參數模型,普通機器都能運行。 下載模型 # 方式1:使用魔搭社區SDK 下載 # down_deepseek.py from modelscope import snapshot_download model_…

DeepSeek實戰

DeepSeek 接入實戰:從零開始快速上手 引言 在當今的 AI 領域,DeepSeek 作為一個強大的自然語言處理(NLP)平臺,提供了豐富的 API 接口,幫助開發者快速實現智能對話、文本生成、語義分析等功能。本文將帶你…

Android NDK打包封裝教程與優化技巧

關于NDK打包封裝的問題。首先,用戶可能不太清楚NDK的基本概念,所以我應該先解釋NDK是什么以及它的作用。然后,用戶可能想知道如何在Android項目中使用NDK,所以需要分步驟說明配置過程,包括安裝NDK、配置CMake或ndk-build,創建JNI接口,編寫C/C++代碼,編譯和打包。 接下…

【告別雙日期面板!一招實現el-date-picker智能聯動日期選擇】

告別雙日期面板!一招實現el-date-picker智能聯動日期選擇 1.需求背景2.DateTimePicker 現狀圖3.日期選擇器實現代碼4.日期選擇器實現效果圖5.日期時間選擇器實現代碼6.日期時間選擇器實現效果圖 1.需求背景 在用戶使用時間查詢時,我們經常需要按月份篩選…

Linux(ftrace)__mcount的實現原理

Linux 內核調試工具ftrace 之(_mcount的實現原理) ftrace 是 Linux 內核中的一種跟蹤工具,主要用于性能分析、調試和內核代碼的執行跟蹤。它通過在內核代碼的關鍵點插入探針(probe)來記錄函數調用和執行信息。這對于開…

Java注解(Annotation)

一、注解的定義 核心概念 注解是Java中一種特殊形式的“元數據”,用于為類、方法、字段、參數等代碼元素附加說明信息。它不會直接影響代碼邏輯,但可以通過編譯器、框架或反射機制進行解析和處理。 與注釋(Comment)的區別 注釋&a…

tauri2+typescript+vue+vite+leaflet等的簡單聯合使用(一)

項目目標 主要的目的是學習tauri。 流程 1、搭建項目 2、簡單的在項目使用leaflet 3、打包 準備項目 環境準備 廢話不多說,直接開始 需要有準備能運行Rust的環境和Node,對于Rust可以參考下面這位大佬的文章,Node不必細說。 Rust 和…

深入解析 Svelte:下一代前端框架的革命

深入解析 Svelte:下一代前端框架的革命 1. Svelte 簡介 Svelte 是一款前端框架,與 React、Vue 等傳統框架不同,它采用 編譯時(Compile-time) 方式來優化前端應用。它不像 React 或 Vue 依賴虛擬 DOM,而是…

關于流水線的理解

還是不太理解,我之前一直以為,對axis總線,每一級的寄存器就像fifo一樣,一級一級的分級存儲最后一級需要的數據。 像這張圖,一開始是在解析axis流形式的數據包,數據包一直都能輸入,所以valid一直…

Python代碼之美:從規范到藝術

基礎規范:代碼的"顏值"很重要 👉大禮包🎁:👈 PEP 8:不只是規范,是寫作藝術 良好的代碼格式就像優美的書法,讓人賞心悅目。比如: # 不推薦的寫法 def calcul…

【AI+智造】在阿里云Ubuntu 24.04上部署DeepSeek R1 14B的完整方案

作者:Odoo技術開發/資深信息化負責人 日期:2025年2月28日 一、部署背景與目標 DeepSeek R1作為國產大語言模型的代表,憑借其強化學習驅動的推理能力,在復雜任務(如數學問題、編程邏輯)中表現優異。本地化部…

8 SpringBoot進階(上):AOP(面向切面編程技術)、AOP案例之統一操作日志

文章目錄 前言1. AOP基礎1.1 AOP概述: 什么是AOP?1.2 AOP快速入門1.3 Spring AOP核心中的相關術語(面試)2. AOP進階2.1 通知類型2.1.1 @Around:環繞通知,此注解標注的通知方法在目標方法前、后都被執行(通知的代碼在業務方法之前和之后都有)2.1.2 @Before:前置通知,此…

【react】快速上手基礎教程

目錄 一、React 簡介 1.什么是 React 2.React 核心特性 二、環境搭建 1. 創建 React 項目 2.關鍵配置 三、核心概念 1. JSX 語法 表達式嵌入 樣式處理 2. 組件 (Component) 3. 狀態 (State) 與屬性 (Props) 4. 事件處理 合成事件(SyntheticEvent) 5. …

七星棋牌 6 端 200 子游戲全開源修復版源碼(樂豆 + 防沉迷 + 比賽場 + 控制)

七星棋牌源碼 是一款運營級的棋牌產品,覆蓋 湖南、湖北、山西、江蘇、貴州 等 6 大省區,支持 安卓、iOS 雙端,并且 全開源。這個版本是 修復優化后的二開版本,新增了 樂豆系統、比賽場模式、防沉迷機制、AI 智能控制 等功能&#…

【人工智能】Deepseek 與 Kimi 聯袂:重塑 PPT 創作,開啟智能演示新紀元

我的個人主頁 我的專欄:人工智能領域、java-數據結構、Javase、C語言,希望能幫助到大家!!!點贊👍收藏? 前言 在當今快節奏的工作與學習場景中,PPT 制作常常是一項耗時耗力的任務。從前期的資…

Kafka的高水位、低水位是什么概念?

Kafka 的 高水位(High Watermark, HW) 和 低水位(Low Watermark, LW) 是和數據存儲、消費進度、日志清理等密切相關的重要概念。我們用一個 “蓄水池” 的比喻來形象地解釋它們的作用。 1. Kafka 里的數據像一個蓄水池 Kafka 的數…

基于JAVA+Spring+mysql_快遞管理系統源碼+設計文檔

文末獲取源碼數據庫文檔 感興趣的可以先收藏,有畢設問題,項目以及論文撰寫等問題都可以和博主溝通,盡最大努力幫助更多的人! 摘 要 隨著物流行業信息化的深入使得物流過程中貨物的狀態和變化透明化,現代信息化的接入使…

Python----數據分析(Numpy:安裝,數組創建,切片和索引,數組的屬性,數據類型,數組形狀,數組的運算,基本函數)

一、 Numpy庫簡介 1.1、概念 NumPy(Numerical Python)是一個開源的Python科學計算庫,旨在為Python提供 高性能的多維數組對象和一系列工具。NumPy數組是Python數據分析的基礎,許多 其他的數據處理庫(如Pandas、SciPy)都依賴于Num…

【SQL】MySQL中的字符串處理函數:concat 函數拼接字符串,COALESCE函數處理NULL字符串

MySQL中的字符串處理函數:concat 函數 一、concat ()函數 1.1、基本語法1.2、示例1.3、特殊用途 二、COALESCE()函數 2.1、基本語法2.2、示例2.3、用途 三、進階練習 3.1 條件和 SQL 語句3.2、解釋 一、concat &…