LINUX第4天——文件及目录管理

本文详细介绍了Linux系统中文件和目录的管理,包括创建、删除、切换目录,以及查看文件内容和权限修改。还讨论了查找文件的方法,如find和locate命令,以及如何使用管道和重定向。此外,文章提到了Bash的快捷输入和删除技巧,以及文件别名的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 文件及目录管理

1.1 创建和删除

  • 创建文件夹
$mkdir folder
  • 删除文件夹
$rm -rf folder

	选项
		-d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;
		-f:强制删除文件或目录;
		-i:删除已有文件或目录之前先询问用户;
		-r或-R:递归处理,将指定目录下的所有文件与子目录一并处理, 删除目录时有效;
		–preserve-root:不对根目录进行递归操作;
		-v:显示指令的详细执行过程。
  • 移动
mv [OPTION]... SOURCE... DIRECTORY

$mv 待移文件/文件夹  目的位置(只能是文件夹)
  • 复制
mv 一样

1.2 目录切换

  • 目录切换
$cd
  • 切换到上一级目录
$cd ..
  • 切换到上两级目录
$cd ../..
  • 切换到上一级工作目录
$cd -

这个可以自己实验一下
  • 显示当前路径
$pwd

1.3 列出目录项

  • 显示当前目录下的文件
$ls
  • 按时间顺序排列
$ls -l 或 $ls -lrt
  • 给文件编号
$ls | cat -n

在这里插入图片描述

  • 查看隐藏文件
$ls -a

1.4 查找目录及文件

  • 查找文件或文件夹(目录)
$find -name "008-*"
  • 显示查找的文件的类型
$find -name "008-*" | xargs file

在这里插入图片描述

  • 递归当前目录及子目录删除所有.o文件
$find -name "*.o" -exec rm {} \;
  • locate
$locate 008-基础命令

注意:
1. locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。
2. locate 的速度比 find 快,它并不是真的查找,而是查数据库,
3. 一般文件数据库在 /var/lib/slocate/slocate.db 中,
4. 所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,
5. 也可以手工升级数据库 ,命令为:sudo updatedb
6. 默认情况下 updatedb 每天执行一次。

在这里插入图片描述

1.5 查看文件内容

  • cat
$cat file1.txt

cat 后面跟要查看的文件,文件内容全部输出到屏幕

在这里插入图片描述

  • more
$more file1.txt

more 是我们最常用的工具之一:
1. 最常用的就是显示输出的内容。
2. 然后根据窗口的大小进行分页显示。
3. 然后还能提示文件的百分比。

在这里插入图片描述

  • less

简介

less 工具
1. 也是对文件或其它输出进行分页显示的工具。
2. 应该说是Linux正统查看文件内容的工具,功能极其强大。

选项

-b <缓冲区大小> 设置缓冲区的大小

-e 当文件显示结束后,自动离开

-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件

-g 只标志最后搜索的关键词

-i 忽略搜索时的大小写

-m 显示类似more命令的百分比

-N 显示每行的行号

-o <文件名> 将less 输出的内容在指定文件中保存起来

-Q 不使用警告音

-s 显示连续空行为一行

-S 行过长时间将超出部分舍弃

-x <数字> 将“tab”键显示为规定的数字空格

/字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与 /? 有关)

N:反向重复前一个搜索(与 /? 有关)

关于less动作

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less 命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一页
  • 只看前10行
$head -10 file1.txt
  • 看倒数第5行
$tail -5 file1.txt
  • 查看两个文件间的差别
$diff file1.txt file2.txt

1.6 文件与目录权限修改

  • 权限名
1. r 读取权限
2. w 写权限
3. x 执行权限
  • 权限值
1. r 4
2. w 2
3. x 1
  • 修改文件权限:由可读可写变为只可读
$chmod 444 file1.txt

在这里插入图片描述
在这里插入图片描述

  • 再来个例子
通常我们以 Vim 编辑 Shell 文件批处理文件后,文件权限通常是 rw-rw-r--644)。
那么,如果要将该文件变成可执行文件,并且不让其他人修改此文件。
则只需将此文件的权限该为 rwxr-xr-x(755)即可。

1.6.1 另一种权限修改方法

字母法:chmod u/g/o/s +/-/= r/w/x

  • u/g/o/a
u/g/o/a含义
uuser 表示该文件的所有者
ggroup 表示与该文件的所有者属于同一组( group )者,即用户组
oother 表示其他以外的人
aall 表示这三者皆是
  • +/-/=
+/-/=含义
+增加权限
-撤销权限
=设定权限
  • r/w/x
r/w/x含义
rread 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
wwrite 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
xexcute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。
  • 例子

在这里插入图片描述

1.7 给文件增加别名

  • 临时设置,重启失效
$alias show="ls -l"

在这里插入图片描述

  • 永久设置(非全局配置别名)
$alias show='ls -l'
export GOPATH=/root/show

1.8 管道和重定向

1.8.1 管道

  • 管道符
符号为:|
  • 作用
command1 | command2

作用:
| 用于将 command1 的输出重定向作为 command2 的输入
特点:
1. command1 的输出会被实时重定向到 command2 的输入,中间数据传输不会用到任何中间文件或缓冲区。
2. Linux 系统实际上会同时运行 command1 和 command2,并在内部将它们连接起来。而不是表面看起来先运行 command1 然后在运行 command2。

1.8.2 重定向

1.8.2.1 输出重定向
  • " > 重定向"
command > outputfile

作用:
"> 重定向符"用于把 command 命令的"输出结果"重定向输入("覆盖")到指定的 outputfile 文件中。
特点:
1. 如果 outputfile 不存在,则自动创建。
2. 如果 outputfile 文件有内容,则全部覆盖。
  • " >> 重定向"
command >> outputfile

作用:
">> 重定向符"用于把 command 命令的"输出结果"重定向"追加"到指定的 outputfile 文件中。
特点:
1. 如果 outputfile 不存在,则自动创建。
2. 如果 outputfile 文件有内容,则继续追加到文件末尾。
1.8.2.2 输入重定向
  • " < 重定向"
command < inputfile

作用:
< 重定向符用于将文件中的内容重定向输入给 command 处理。
  • " << 重定向"
命令 << 分界符

作用:
1. << 重定向符也被称为内联输入重定向符。
2. 表示从键盘中读入,直到遇到分界符才停止(读入的数据不包括分界符)。
3. 这里的分界符其实就是自定义的字符串。
4. 只要不输入分界符(一般用marker),就可以一直输入数据。
5. 输入内容不会储存到文件里。

2. Bash快捷输入或删除

  • 什么是Bash
1. Bash,Unix shell的一种
2. 能运行于大多数类Unix系统的操作系统之上
3. 包括Linux与Mac OS X v10.4都将它作为默认shell
4. Bash是一个命令处理器,通常运行于文本窗口中
5. Bash还能从文件中读取命令,这样的文件称为脚本
  • 快捷键
作用
Ctl-u删除光标到行首的所有字符,在某些设置下,删除全行
Ctl-w删除当前光标到前边的最近一个空格之间的字符
Ctl-hbackspace,删除光标前边的字符
Ctl-r匹配最相近的一个文件,然后输出
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姜满月

鼓励,鼓励,更加努力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值