内容提要
-
文件系统
-
目录操作
-
文件操作
-
存储转换
文件系统
Linux本质就是一个文件系统,Linux文件系统是操作系统组织、存取、保存数据的一种手段,整体采用层级式的倒状目录结构。
倒树状结构中的目录
/:根目录,Linux中的绝对路径就是由这个开始的
/bin:主要存放系统的普通指令
/boot:主要存放普通的引导程序
/dev:存放硬件设备对应的文件
/etc:存放系统和应用程序的配置文件(profile)
/home:家目录,存放当前系统下所有用户对应的目录
/lib:存放系统和应用依赖的库文件
/proc:存放系统运行时的运行信息
/user:是软件的默认安装路径
/var:存放缓存,备份文件
/cdrom:光驱
/mnt:用于系统文件系统的挂载目录
/sbin:用于存放特权指令
路径的概念【重点】
-
绝对路径:以根路径(/)为参考点描述的路径,称之为绝对路径。
举例:
cd /home/yueqian --任何地方都可切换
-
相对路径:以当前目录(./)为参考点描述的路径,称之为相对路径
举例:
cd/home --绝对路径 cd./yueqian --相对路径,必须是当前路径下才可以切换,不能任意切换(/home目录下必须要有yueqian目录) cd yueqian --相对路径
Linux系统文件类型
说明:
d
:目录(文件夹)
-
:普通文件
l
:文件的快捷方式
c:字符文件设备
b:块设备文件
s:表示套接字文件
p:表示管道文件
目录操作
指令
语法:
指令 【选项】【操作的文件或目录】
注意:语法中加入[..],就代表内容可选
-
pwd:查看当前所在目录的绝对路径
-
ls:显示指定的路径(默认当前路径)下的文件或目录
-
-a:显示所有(包含隐藏文件或目录)文件或目录
-
-l:显示所有文件或目录的详细信息列表
-
-r:将文件以相反次序显示(原定依照英文字母次序显示)
-
-t:将文件以创建时间的先后次序显示。
说明:多个参数可以共同出现,如:
ls -l -t -r ---->ls -ltr
将所有文件或目录按照时间倒序排序并以列表的形式显示(时间越大越靠前)
我们也可以指定具体的目录进行访问,如:
ls /mnt/hgfs/linux
-
-
cd:切换目录
格式:
cd 目录
注意:cd后不能跟文件路径,应该跟文件夹(目录)路径。
cd中的特殊写法:
①
cd ~
:切换到当前家目录下的用户目录下,比如:cd ~就会切换到/home/st,等价于cd/home/st
②
cd -
:返回上一次操作的工作目录(类似于上一步)③
cd /
:切换到根目录下④
cd ./
:切换到当前目录下⑤
cd ../
:切换到上一级目录,等价于cd ..
⑥
cd ../../
:切换到上上一级目录,等价于cd../..
-
mkdir:创建空文件夹(目录)
语法:
mkdir 文件夹路径
举例:
-
说明:mkdir支持批量创建空文件夹
参数:
-p
:创建多层文件夹语法:
mkdir -p 文件夹多层路径
举例:
-
rmdir:删除空目录,仅限于删除空目录
语法:
rmdir 空文件夹路径
-
touch:创建文件
语法:
touch 文件路径
举例:
-
rm:删除文件或者文件夹(注意:文件夹需要递归删除)
-
语法:
rm [选项]文件/文件夹路径
选项:
-i
:给出交互提示,可以输出Yes或者No-f
:强制删除,不提升-r
:递归删除
举例:
说明:文件删除,直接删除就可以了:目录删除,需要递归删除
-
cp:复制文件或者文件夹(注意:复制文件夹需要递归复制,这里的复制其实就是拷贝+粘贴)
语法:
cp 【选项】被复制的目录/文件路径 目的地地址
选项:
-r
:递归复制,复制文件夹中的所有-i
:如果目的地路径下已经存在同名目录/文件,会交互提示举例:
-
mv:移动文件或目录(重命名文件/目录)
语法:
mv 被移到的文件/目录路径 目的地文件/目录路径
说明:被移到文件名与目的地文件名不一致,相当于重命名
举例:
mv aa.txt ../b --移动 mv aa.txt ../b/bb.txt --移动+重命名 mv aa.txt bb.txt --重命名 mv aa.txt ../b/bb.txt --移动+重命名 cp -ri aa.txt ../b/cc.txt --复制+重命名
说明:重命名是移动和拷贝在特殊情况下的产物
文件操作
指令
-
cat:查看文件内容
-
执行权限:所用用户
-
语法:
cat [选项] 文件
-
选项:
-
-n:显示文件行号
-
-
范例:
cat /proc/cpuinfo cat -n /proc/cpuinfo
-
-
more:分页查看内容
-
执行权限:所有用户
-
语法:
more 文件/文件路径
-
操作:
-
空格键:向下翻动一页
-
回车键:向下翻动一行
-
Q/q键:退出查看
-
-
范例:
more /proc/cpuinfo
-
-
less:分页查看文件内容
-
执行权限:所有用户
-
语法:
less [选项] 文件/文件路径
-
选项:
-
-M:显示当前行的范围
-
-
操作:
-
空格键:向下翻动一页
-
B/b:向上翻动一页
-
方向上下键:向上向下翻动一页
-
Q/q:退出(quit)
-
-
范例:
less -M /proc/cpuinfo
-
-
head:查看文件的头部内容(默认十行)
-
执行权限:所有用户
-
语法:
head [选项] 文件/文件路径
-
选项:
-
-n:从头开始显示n行内容(识别换行符)
-
-
范例:
head -n 5 /proc/cpuinfo --等价于 head -5 /proc/cpuinfo
-
-
tail:查看文件的尾部内容(默认十行)
-
执行权限:所有用户
-
语法:
tail [选项] 文件/文件路径
-
选项:
-
-n:从尾开始显示n行内容(识别换行符)
-
-
范例:
tail -n 5 /proc/couinfo tail 5 /proc/cpuinfo
-
-
grep:搜索文件内容,在文件中查找指定的字符序列(字符串)
-
执行权限:所有用户
-
语法:
grep [选项] 要查找的字符序列 文件/文件路径 --或者 grep [选项] '要查找的字符序列' 文件/文件路径
-
选项:
-
-n:显示行号(number)
-
-c:统计搜索到的行的数据(count)
-
-i:忽略大小写搜索
-
-
范例:
grep -ni procesor /proc/cpuinfo --显示行号的忽略大小写,在文件cpuinfo中查找procesor --等价于 grep -ni 'procesor' /proc/cpuinfo --显示行号的忽略大小写,在文件cpuinfo中查找procesor grep -n /proc/cpuinfo --显示行号
-
特殊匹配
-
^:行首匹配
-
范例:
grep -n '^001' demo01.c --在demo01.c中匹配001开头内容
-
-
$:行伍匹配
-
范例:
grep -n '[0-7][0-9]$' demo01.c 中匹配以00~79结尾的内容
-
-
-
-
find:查找文件或目录(递归查找),从硬盘查找,精确性高,性能低
-
执行权限:所有用户
-
语法:
find 检索路径 [选项] 参数
-
选项:
-
-name:按照名称查找
-
-iname:忽略大小写按名称查找
-
-size:按照文件大小搜索,默认1个单位大小是512Bytes
-
-type:按照文件类型查找(d,f,s,l,p····)
-
-
范例:
find ./ -iname test.c --在当前目录中查找文件名为test.c的文件,文件名忽略大小写 find ./ -size +3M --在当前目录中查找文件大小超过3M(1024*1024*3(Bytes))的文件,这里“+”表示大于 find ./ -size -3M --在当前目录中查找文件大小不超过3M的文件,这里“-”表示小于 find ./ -size +3 --在当前目录中查找文件大小超过3个单位(3*512(Bytes)的文件,这里“+”表示大于
-
-
locate:快速查找文件或目录,从数据库查找,准确性低,性能高。
说明:该指令是从文件系统的数据库中查找,确定是新创建的文件没有在数据库中建立索引,用该指令找不到。
-
执行权限:所有用户
-
语法:
locate [选项] 文件/目录
-
选项:
-
-c:统计(count)
-
-i:忽略大小写
-
-
范例:
locate -i test.c
-
注意:默认情况下updatedb每天更新一次,我们可以手动更新。指令:
updatedb
-
-
which:快速检索指令位置
-
执行权限:所有用户
-
语法:
which 指令名称
-
范例:
which ls
-
-
echo:将指定字符串输出到设备上
-
执行权限:所有用户
-
语法:
echo 字符串
-
范例:
echo "yueqian is good" > yueqian.txt --将yueqian is good输出到yueqian.txt echo "gaochao is good" >> yuqian.txt --将gaochao is good追加到yueqian.txt
解释:
①
>
覆盖式写入,就是覆盖文件中本来的内容(不保留原本的内容)②
>>
追加式写入,就是在原本文件的内容末追加内容(保留原本的内容)
-
存储转换
1Bytes(字节)=8bit(位)
1KB=1024Byte
1MB=1024KB
1GB=1024MB
1TB=1024G
标签:02,文件,--,路径,cd,选项,Linux,操作,目录 From: https://blog.csdn.net/m0_74147998/article/details/145191392