目录和文件管理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
-
前言
-
一、查看及检索文件
-
二、备份及查找文件
-
三、VI的三种模式
-
四、VI的操作命令
-
总结
前言
提示:这里可以添加本文要记录的大概内容:
文件与目录操作是编程中处理存储数据的基础功能,涉及创建、读取、查看、备份、查找、修改和删除文件或目录。不同编程语言提供相应的内置模块或库实现这些功能。
提示:以下是本篇文章正文内容,下面案例可供参考
一、查看及检索文件
文件内容查看
1.cat: 查看文件内容
格式:cat [选项] 文件名 …
-n:显示行号
示例:cat -n /etc/passwd

2.less/more: 分页查看文件内容
1.格式:more [选项] 文件名 …
交互操作方法:
按Enter键向下逐行滚动
按空格键向下翻一屏
按b键向上翻一屏
按q键退出

2.格式:less[选项] 文件名 …
交互操作方法:
Page Up 向上翻页,Page Down 向下翻页
按“/”键查找内容,“n”下一个内容,“N”上一个内容
其他功能与 more 命令基本类似
3.head/tail: 查看文件开头/结尾
1.格式:head -n 文件名 …
1.-n: 显示行数(head/tail)
显示文件最后 5 行:
head -n 5 filename.txt
2.-f:tail命令跟踪文件变化状态
显示最后 10 行并跟踪更新:
tail -n 10 -f filename.log
示例:
[root@localhost log]# head -n 10 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

2.格式:tail -n 文件名 … tail -f 文件名
示例:
tail -f /var/log/secure

4.统计文件内容wc命令
统计文件中的单词数量(Word Count)等信息
格式:wc [选项]... 目标文件...
常用命令选项
1.-l:统计行数
wc -l filename.txt
2.-w:统计单词个数
wc -w filename.txt
3.-c:统计字节数
wc -c filename.txt
5.检索和过滤文件内容grep命令
在文件中查找并显示包含指定字符串的行。
格式:grep [选项]... 查找条件 目标文件。
⦁ grep: 搜索文件内容
常用命令选项:
1.-i:不区分大小写

2.-v:反向匹配

3.-w:匹配整个单词
grep -w "pattern" filename
-
-w:确保匹配的字符串是一个完整的单词。 -
"pattern":要搜索的单词或模式。 -
filename:要搜索的文件名(可选,如果不指定则从标准输入读取)。
4.-E:扩展表达式:grep -E “root|sshd” /etc/passwd

格式 :grep -Eirl “关键字” 目录
示例:查找指定目录一下,包含指定关键字的文件列表。
grep -Eirl "root" /etc >/root/outfiles
命令小技巧:
1、tab键,命令自动补全
2、./代表当前目录
3、../代表上一级目录
4、> 输出重定向
5、>>追加到文件末尾
6、| 管道符号
7、history 查看自己的命令执行历史
二、备份及查找文档
1.打包备份
⦁ tar
格式:tar 参数 压缩包名称.tar|tar.gz 压缩包的名称。
### 常用选项
1. -c: 创建一个新的归档文件。
tar -c [OPTIONS] -f ARCHIVE_NAME FILE1 FILE2 DIR1...
-c(或 --create)表示创建一个新的归档文件(archive)。该选项必须与其他参数配合使用,例如指定归档文件名和要打包的文件或目录。
- 示例:tar -cvf archive.tar /path/to/directory
- 说明:创建一个名为archive.tar的归档,包含指定目录中的所有文件。
2. -x: 从归档文件中提取文件。
# 解压 .tar 文件
tar -xf archive.tar
# 解压 .tar.gz 文件
tar -xzf archive.tar.gz
# 解压到指定目录
tar -xf archive.tar -C /target/directory/
- 示例:tar -xvf archive.tar
- 说明:从archive.tar中提取所有文件。
3. -t: 列出归档文件中的内容。
tar -tf archive.tar
tar -t 命令用于列出 tar 归档文件中的内容,而不解压文件。该命令会显示归档文件中包含的所有文件和目录的列表。
- 示例:tar -tvf archive.tar
- 说明:显示archive.tar中的文件列表。
4. -f: 指定归档文件的名称(通常与其他选项一起使用)。
tar -[操作选项] -f [归档文件名] [文件或目录...]
tar -f 是 GNU tar 命令中的一个关键选项,用于指定归档文件的名称或路径。该选项必须与 -c(创建)、-x(提取)、-t(列出内容)等其他操作选项结合使用。
- 示例:tar -cf archive.tar /path/to/files
- 说明:创建归档文件archive.tar。
5. -v: 显示处理过程中的详细信息(verbose)。
tar -cvf archive.tar file1 file2
tar -xvf archive.tar
tar -v(或 --verbose)选项用于在 tar 命令执行过程中显示详细的操作信息。它会列出正在处理的文件或目录,方便用户跟踪命令的执行情况。
- 示例:tar -cvf archive.tar /path/to/directory
- 说明:在创建归档时显示所有正在处理的文件名。
6. -z: 使用gzip压缩归档文件。
tar -zcvf archive_name.tar.gz /path/to/directory_or_file
-z 选项表示使用 gzip 压缩或解压归档文件。通常与 -c(创建归档)、-x(解压归档)或 -t(列出归档内容)结合使用。
- 示例:tar -czvf archive.tar.gz /path/to/directory
- 说明:创建一个gzip压缩的归档文件archive.tar.gz。
7. -j: 使用bzip2压缩归档文件。
tar -jcvf archive_name.tar.bz2 /path/to/directory_or_file
tar -j 是 GNU tar 命令的一个选项,用于指定使用 bzip2 算法进行压缩或解压。bzip2 通常比 gzip 提供更高的压缩率,但压缩和解压速度较慢。
- 示例:tar -cjvf archive.tar.bz2 /path/to/directory
- 说明:创建一个bzip2压缩的归档文件archive.tar.bz2。
8. -C: 切换到指定目录后再进行操作。
tar -xvf archive.tar -C /path/to/directory
tar -C 是 tar 命令的一个选项,用于在解压或提取文件时指定目标目录。
- 示例:tar -cvf archive.tar -C /path/to/directory.
- 说明:在/path/to/directory目录下创建归档文件,包含该目录下的所有文件。
1.打包
tar -cvf etc.tar /etc
2.打包并压缩
tar -czvf etc.tar.gz /etc
3.解压
tar -xzvf etc.tar.gz //解压至当前目录
tar -xzvf etc.tar.gz -C /root/tmp0714/ //解压至指定目录
4.查看压缩包内容
tar -tvf etc.tar.gz
5.bz2格式的压缩与解压
tar -cjvf etc.tar.bz2 /etc
tar -xjvf etc.tar.bz2
tar -tvf etc.tar.bz2
2.查找文档
基本语法:find [路径] [选项] [表达式]
常用示例:
1. 按名称查找文件:
find [路径] -name "文件名"
- 示例:find /etc -name "pass*"
2. 查找匹配模式的文件:
find . -name "*.txt"
- 示例:find /tmp -name "*.txt"
- 说明:查找所有以.txt结尾的文件。
3. 查找不区分大小写的文件名:
find ~/Pictures -name "*.jpg"
- 示例:find / -iname ".jpg"
- 说明:查找所有.jpg和.JPG文件。
4. 按文件类型查找:
find /etc -type d
文件类型:
d:目录
f:普通文件
l:链接文件
b:块文件
c:字符文件
s:套字节文件
- 示例:find /etc -type d
- 说明:查找所有目录。
- 示例:find /etc -type f
- 说明:查找所有普通文件。
5. 按文件大小查找:
find /path/to/search -size [+/-]size[c/k/M/G]
-
/path/to/search:指定搜索的目录路径,如.表示当前目录。 -
-size:指定文件大小条件。 -
+表示大于,-表示小于,不加符号表示精确匹配。 -
c表示字节,k表示 KB,M表示 MB,G表示 GB。
- 示例:find /boot -type f -size +30M。
- 说明:查找大于30MB的文件。
6. 按修改时间查找:
find /path/to/dir -mtime -7 # 查找7天内修改的文件
find /path/to/dir -mtime +30 # 查找30天前修改的文件
1.-mtime:天数,+N代表超过N天,-N代表N天以内
- 示例:find /var/log -name "*.log" -mtime +7
- 说明:查找超过7天以上的日志。
- 示例:find /var/log -name "*.log" -mtime -1
- 说明:查找1天内的日志。
find /path/to/dir -mmin -60 # 查找60分钟内修改的文件
2.-mmin:分钟
- 示例:find /var/log -name "*.log" -mmin -1
- 说明:查找1分钟内的日志。
- 示例:find /var/log -name "*.log" -mmin +1
- 说明:查找超过1分钟的日志。
7. 查找并执行命令:
find [路径] [匹配条件] -exec [命令] {} \;
-
{}:代表find匹配到的文件名。 -
\;:表示-exec的结束符号(需转义)。
- 示例:find /var/log -name "*.log" -mmin -1 -exec cp -rf {} /tmp/testdir \;
- 说明:查找1分钟内修改过的.log,找到之后,复制到指定目录
- 示例:find /tmp/testdir -name "*.log" -exec rm -rf {} \;
8. 查找指定用户拥有的文件:
find /path/to/search -user username
-
/path/to/search:替换为需要搜索的目录路径(如/home或/)。 -
username:替换为目标用户的用户名。
- 示例:find / -user "user25"
- 说明:查找用户user25拥有的所有文件。
如果没有普通账号,可以创建一个普通账号,useradd 用户名。
9. 查找具有特定权限的文件:
find /path/to/search -type f -perm 0755
- 示例:find /path/to/directory -perm 644
- 说明:查找权限为644的文件。
三、VI的三种模式
VI文本编辑器的作用是什么?
1.创建或修改文本文件。
2.维护Linux系统中的各种配置文件。
Linux中最常用的文本编辑器
1.Vi:类UNIX操作系统的默认文本编辑器。
2.vim是vi文本编辑器(一般简称为vi编辑器)的增强版本。
编辑器有三种主要模式,每种模式都有其特定的功能:
1. 普通模式 (Normal Mode):
这是进入 vi 时默认的模式。在这个模式下,用户可以使用键盘上的命令来导航文本、删除字符、复制和粘贴文本等。可以通过按 Esc 键进入普通模式。
2. 插入模式 (Insert Mode):
在插入模式下,用户可以直接输入文本。要进入插入模式,可以在普通模式下按 i(插入光标前)、I(在行首插入)、a(在光标后插入)或 A(在行尾插入)等命令。按 Esc 键可以返回到普通模式。
3. 命令模式 (Command Mode):
在命令模式下,用户可以输入特定的命令来执行各种操作,如保存文件、退出 vi 等。要进入命令模式,可以在普通模式下按 : 键。此时可以输入命令,如 :w(保存文件)、:q(退出)等。
四、VI的操作命令
Vim 是一个强大的文本编辑器,拥有丰富的命令和功能。以下是一些基本的 Vim 命令和使用技巧:
1.启动和退出
1.启动VI/VIM
打开终端,输入以下命令启动VI/VIM编辑器:
- vim filename:打开或创建一个文件。
-
vi:启动VI编辑器(空文件)。 -
vi 文件名:打开或创建指定文件。 -
vim:启动VIM编辑器(VI的增强版)。 -
vim 文件名:用VIM打开或创建文件。
2.退出VI/VIM
退出前需确保处于普通模式(按Esc键切换)。以下是常用退出命令:
- :w:保存文件。
- :q:退出 Vim。
- :wq或:x:保存并退出。
- :q!:强制退出而不保存。
-:w 文件名 相当于另存为。
ZZ(大写):快捷保存并退出(普通模式下直接输入)。
2.基本导航
- h:左移光标。
- j:下移光标。
- k:上移光标。
- l:右移光标。
备注:上下左右移动(用上下左右方向键代替)。
- gg:跳到文件顶部。
- n gg(nG):跳到文件N行行首的位置。
- G:跳到文件底部。
- :n:跳到第 n 行。
- 0:跳到光标所在行的行首。
- $:跳到光标所在行的行尾。
3. 编辑命令
- i:进入插入模式。
- a:在光标后进入插入模式。
- o:在当前行下方插入新行并进入插入模式。
- O:在当前行的上方插入新行并进入插入模式。
- Esc:退出插入模式。
- x:删除光标所在的字符。
- dw:删除一个单词。
- d$:删除光标到行尾
- dd:删除光标所在的整行。
- N dd:删除光标所在位置开始的N行
-dG:删除光标所在行至文件尾。
- yy:复制光标所在的整行。
- N yy:复制光标位置开始N行。
- p:粘贴复制的内容。
-移动行,Ndd,然后在指定的位置按p。
:r filename,读入一个文件内容。
: r! 命令 读入一个命名的执行结果。
4.查找和替换
- /pattern:向下查找指定的模式。
- ?pattern:向上查找指定的模式。
- n:跳到下一个匹配项。
- N:跳到上一个匹配项。
-:%s/old/new/g:在整个文件中替换 old 为 new。
-:s/old/new ,替换当前行第一个“old”。
-:s/old/new/g ,替换当前行所有的“old”。
-:n,m s/old/new/g ,替换第n-m行所有的“old”。
5.其他有用的命令
- u:撤销上一步操作。
Ctl+r:重做撤销操作(取消撤销)。
- :set nu:显示行号。
- :set nonu:隐藏行号。
-:e!:不退出编辑器的情况下,还原文件的原始状态。
总结
提示:这里对文章进行总结:
本文主要内容有:
1.文件查看命令(cat/less/more/head/tail/wc/grep)及其选项;
2.文件备份与查找(tar打包压缩解压命令、find查找文件);
3.VI编辑器的三种模式(普通/插入/命令模式)及常用操作命令(启动退出、导航、编辑、查找替换等)。
更多推荐


所有评论(0)