当前位置: 首页 > news >正文

linux文件管理(补充)

1、查看文件命令

1.1 cat

用于连接文件并打印到标准输出设备上,它的主要作用是用于查看和连接文件。
用法: cat 参数 文件名
参数:
Ø -n:显示行号,会在输出的每一行前加上行号。
Ø -b:显示行号,但只对非空行进行编号。
Ø -s:压缩连续的空行,只显示一个空行。
Ø -E:在每一行的末尾显示 $ 符号。
Ø -T:将 Tab 字符显示为 ^I。
Ø -v:显示一些非打印字符。

1.2 more和less

more 和 less命令通过全屏的方式分页显示文件,便于 从头到尾仔细地阅读文件内容。
用法: more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..]
           less与more用法类似
more的参数:
Ø -num 一次显示的行数
Ø -d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
Ø -l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
Ø -f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两
行或两行以上)
Ø -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
Ø -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
Ø -s 当遇到有连续两行以上的空白行,就代换为一行的空白行
Ø -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
Ø +/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
Ø +num 从第 num 行开始显示
Ø fileNames 欲显示内容的文档,可为复数个数
less的参数:
Ø -e 当文件显示结束后,自动离开
Ø -S 行过长时间将超出部分舍弃
Ø /字符串:向下搜索"字符串"的功能
Ø ?字符串:向上搜索"字符串"的功能
Ø n:重复前一个搜索(与 / 或 ? 有关)
Ø N:反向重复前一个搜索(与 / 或 ? 有关)
Ø b 向上翻一页
Ø Q 退出less 命令
Ø y 向前滚动一行
Ø 空格键 滚动一页
Ø 回车键 滚动一行
Ø [pagedown]: 向下翻动一页
Ø [pageup]: 向上翻动一页

1.3 head和tail

head 和 tail 是一对作用相反的命令,前者用于显示文 件开头的一部分内容,后者用于显示文件末尾的一部分 内容。其中“-n”选项指定需要显示多少行的内容,不指定则显示10行。
配合“-f”选项使用时,还可以跟踪文件尾部内容的动 态更新,便于实时监控文件内容的变化。
等等.......

2、检索文件内容

2.1 wc命令

wc 命令用于统计文件内容中包含的行数、单词数、字节数等信息,使用文件名作为参数,可以同时统计多个文件。
语法
wc [-clw][--help][--version][文件...]
参数:
-l:统计文件内容中的行数。
-w:统计文件内容中的单词个数(以空格或制表位作为分隔)。
-c:统计文件内容中的字节数。

2.2 grep命令

grep 命令用于在文件中查找并显示包含指定字符串的行,可 以直接指定关键字符串作为查找条件,也可以使用复杂的条件表达式(例如, “^word”表示以 word 开头, “word$”表示以 word 结尾, “^$”表示空行)。
格式:
grep [选项]… 查找条件 目标文件
参数:
参数说明示例
-i忽略大小写grep -i "error" log.txt
-v反向匹配,显示不包含模式的文本grep -v "success" file.txt
-w全词匹配(避免部分匹配)grep -w "word" file.txt
-n显示匹配行的行号grep -n "pattern" file.txt
-c统计匹配行数(不显示内容)grep -c "error" log.txt

文件与目录控制参数:

参数说明示例
-r递归搜索目录grep -r "main" /src/
--include指定文件类型grep -r --include="*.py" "import" ./
--exclude排除文件类型grep -r --exclude="*.log" "error" ./
-l只显示包含匹配的文件名grep -l "pattern" *.txt
-L显示不包含匹配的文件名grep -L "pattern" *.txt

2.3 find命令

find 是 Unix/Linux 系统中一个强大的文件搜索工具,用于在目录层次结构中查找文件和目录。它可以根据多种条件(如名称、类型、大小、修改时间等)进行搜索,并对找到的文件执行操作。
格式:
find [路径] [选项] [操作]
参数:

(1)按文件名/路径匹配

参数说明示例
-name "模式"按文件名匹配(区分大小写)find /etc -name "*.conf"
-iname "模式"按文件名匹配(不区分大小写)find . -iname "readme*"
-path "模式"按路径匹配(区分大小写)find /var -path "*log*"
-ipath "模式"按路径匹配(不区分大小写)find . -ipath "*doc*"
-regex "模式"按正则表达式匹配(全路径)find . -regex ".*\.\(txt|sh\)"
-iregex "模式"按正则表达式匹配(不区分大小写)find . -iregex ".*\.pdf"

(2)按文件类型过滤

参数文件类型示例
-type f普通文件find /home -type f
-type d目录find . -type d -name "src"
-type l符号链接find /usr -type l
-type b块设备文件find /dev -type b
-type c字符设备文件find /dev -type c
-type p命名管道(FIFO)find /tmp -type p
-type s套接字文件find /run -type s

(3)按时间过滤

参数说明示例
-mtime n修改时间在 n 天前(精确到天)find /var/log -mtime +7(7天前修改)
-mmin n修改时间在 n 分钟前find ~ -mmin -60(最近60分钟内修改)
-atime n访问时间在 n 天前find /tmp -atime +30(30天未访问)
-amin n访问时间在 n 分钟前find . -amin -10(10分钟内访问过)
-ctime n状态变更时间在 n 天前find /etc -ctime -1(1天内元数据变更)
-cmin n状态变更时间在 n 分钟前find . -cmin -5(5分钟内权限/所有者变更)
-newer 文件比指定文件更新的文件find . -newer reference.txt

(4)按大小过滤

参数说明示例
-size +n大于 n 单位(如 +1Mfind /var -size +10M(大于10MB)
-size -n小于 n 单位find ~ -size -100k(小于100KB)
-size n等于 n 单位find . -size 0(空文件)
单位c(字节)、k(KB)、M(MB)、G(GB)find / -size +1G

(5)按权限/所有者过滤

参数说明示例
-perm 权限精确匹配权限(八进制)find . -perm 644
-perm -权限包含指定权限(所有位必须满足)find /bin -perm -111(可执行文件)
-perm /权限包含任一权限(任意位满足)find . -perm /222(用户/组/其他可写)
-user 用户名属于指定用户find /home -user alice
-group 组名属于指定组find /etc -group root
-nouser无有效所有者(用户被删除)find / -nouser
-nogroup无有效组(组被删除)find / -nogroup

(6)逻辑操作符

参数说明示例
-a(默认)与(AND)find . -name "*.txt" -type f
-o或(OR)find . -name "*.sh" -o -name "*.py"
-not(或 !非(NOT)find /var ! -name "*.log"
()分组条件find . \( -name "*.tmp" -o -name "*.bak" \) -delete

.......

3、备份与恢复

在 Linux 操作系统中,最简单的文件和目录备份工具就是 cp(复制)命令。但是当需要备份的文件、目录数量较多时,仅仅使用 cp命令就显得“力不从心” ,并且备份的文件数量及其所占用的磁盘空间都可能会对服务器产生不小的压力。

3.1 gzip和gunzip文件

使用 gzip 制作的压缩文件默认的扩展名为“.gz”。制作压缩文件时,使用“-9”选项可以提高压缩的比率,但文件较大时会需要更多的时间。

语法: gzip 参数 文件

参数:

Ø -d:解压缩 .gz 文件。相当于使用 gunzip 命令。
Ø -k:保留原始文件,不删除。
Ø -r:递归压缩目录下的所有文件。
Ø -v:显示详细的压缩或解压缩过程。
Ø -l:显示压缩文件的详细信息,如压缩率、原始大小等。
Ø -1 到 -9:指定压缩比。-1 是最快的压缩,压缩率最低;
-9 是最慢的压缩,压缩率最高。默认是 -6。
Ø -t:测试压缩文件的完整性。

3.2 bzip2和bunzip2

bzip2 和 bunzip2 命令的用法与 gzip、gunzip 命令基本相同,使用 bzip2 制作的压缩文件默认的扩展名为".bz2"。在ubuntu系统中,一般自带gzip工具,bzip2工具需要下载。

apt install bzip2 #在ubuntu下安装bzip2

需要解压缩经 bzip2 压缩的文件时,只需使用带“-d” 选项的bzip2 命令即可,或者直接使用 bunzip2 命令

3.3 tar命令

tar 命令主要用于对目录和文件进行归档。在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用前面的 gzip 或 bzip2 命令),以节省磁盘空间。

格式:

tar [选项] … 归档及压缩文件名 需要归档的源文件或目录

参数:

Ø -c:创建(Create).tar 格式的包文件。
Ø -C:解压时指定释放的目标文件夹。
Ø -f:表示使用归档文件。
Ø -j:调用 bzip2 程序进行压缩或解压。
Ø -p:打包时保留文件及目录的权限。
Ø -P:打包时保留文件及目录的绝对路径。
Ø -t:列表查看包内的文件。
Ø -v:输出详细信息(Verbose)。
Ø -x:解开.tar 格式的包文件。
Ø -z:调用 gzip 程序进行压缩或解压

4、vim文本编辑器的使用

vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

vim键盘图(源自网络):

基本上 vi/vim 共分为三种模式,
命令模式(Command Mode)、输入模式(Insert Mode)、命令行模式(Command-Line Mode)

......

http://www.xdnf.cn/news/761239.html

相关文章:

  • 纯汇编自制操作系统(四、应用程序等的实现)
  • [Python] Python自动化:PyAutoGUI的基本操作
  • ArkTS基础
  • [PCIe]Gen6 PAM4的功耗相比Gen5 NRZ增加了多少?
  • C++测开,自动化测试,业务(第一段实习)
  • 微软常用运行库合集(VisualC++)2025.04.22
  • 阴盘奇门 api数据接口
  • Redis:安装与常用命令
  • Mybatis-Plus 学习
  • RTMP播放器谁更强?深入解析SmartPlayer与VLC、PotPlayer等方案的技术差异
  • 落石石头检测数据集VOC+YOLO格式1185张1类别
  • WEBSTORM前端 —— 第3章:移动 Web —— 第5节:响应式网页
  • 字节golang后端二面
  • 位运算 #常见位运算总结 #题解
  • 优化06-物理读和IO
  • Markdown笔记
  • 81、使用DTU控制水下灯光控制
  • 商品模块中的多规格设计:实现方式与电商/ERP系统的架构对比
  • [AD] Reaper NBNS+LLMNR+Logon 4624+Logon ID
  • GNSS终端授时之四:高精度的PTP授时
  • PINN for PDE(偏微分方程)1 - 正向问题
  • io流2——字节输入流,文件拷贝
  • Docker容器创建Redis主从集群
  • 卢昌海 | 质量的起源
  • 基于FashionMnist数据集的自监督学习(生成式自监督学习VAE算法)
  • [蓝桥杯]螺旋折线
  • 2024 CKA模拟系统制作 | Step-By-Step | 8、题目搭建-创建 Ingress
  • win32相关(互斥体)
  • 大模型赋能低空经济:从技术突破到应用场景拓展
  • 【C语言练习】077. 理解C语言中的嵌入式编程