Linux下的文件管理
1.文件管理命令
1)touch 用来建立新文件,修改文件的时间戳
touch file1 file2… 建立空文件
touch file(file是已经存在的文件) 把文件时间同步到当前时间
touch -t YYYYMMDDHHmm file
把文件时间更改到指定时间
2)mkdir 建立目录
mkdir dir1 dir2 … 建立空目录
mkdir -p /root/Desktop/dir 建立多层目录
注意:建立多层目录时要加上参数p
3)rm 删除文件或者目录
rm file 删除文件有提示
rm -f 强制删除文件没有提示
rm -r dir 删除目录有提示
rm -rf dir 删除目录无提示
删除文件有提示:
删除文件无提示:
4)gedit 图形的文本编译器
gedit file1 file2 编辑file1 file2
注意:gedit在使用时必须有图形,文件也可以不存在
5)vim 文本编译器
vim file 进入到vim的模式浏览
注意:浏览模式不能编辑文件,需要按下i后才能编辑文件,在vim中不能用鼠标上下移动想要去的位置,编辑完成后,按ESC退出插入模式,再按 :wq 就可以退出vim模式
vim的异常退出
当vim编写文件时未保存更改内容被强制关闭时,即强行关闭了shell
vim会出现异常
当你再次打开那个文件时就会出现异常
【O】 打开只读模式
【E】 继续编辑
【R】 恢复未保存的内容编辑
【D】 删除.swp文件
【Q】 退出当前的文件编辑
【A】 退出vim程序
注意:这些命令都是字母,尤其第一个打开只读模式需要输入大写字母O,而不是数字0
6)cat 显示文件的全部内容
cat file
cat -b file 显示文件的的内容并显示行号,不显示空行的行号
cat -n file 显示文件的的内容并显示行号,显示空行的行号
7)head 查看文件前多少行
head file 默认查看文件前10行
head -n file n代表数字,查看文件前n行
8)tail 查看文件后多少行
tail file 默认查看文件后10行
tail-n file n代表数字,查看文件后n行
9)less 分页浏览
less file 进入less模式查看file
less模式中 <上><下>逐行查看文件内容
pageup和pagedown逐页查看文件内容
/关键字 搜索关键字 n向下匹配 N向上匹配
按v 有less模式进入到vim 编辑完成后ESC,:wq退出返回less
在less模式中按下q退出
10)cp 复制文件
cp 文件 目的地文件
cp 文件1 文件2 目的地文件
cp -r 目录1 目录2
具体思想:等于把你想复制的文件复制到目的地
11)mv 移动文件
mv file1 file2 dir 把file1和file2移动到dir中
mv dir1 dir2 dir 把dir1和dir2移动到dir中,此时不用加-r
mv file 不存在file 这个过程相当于重命名
移动原理:相同设备分区的文件移动是重命名的过程,不同分区的文件移动是建立删除的过程
ls -i 文件 查看文件节点号(相当于身份证号)
12)file 文件类型查看
file file1 查看文件的真实类型
13)wc 文件容量统计
wc -l 行数
wc -m 字符数
wc -w 单词数
wc -c 字节数
2.Linux文件中的寻址
1)Linux系统结构
/ Linux顶级目录
#系统的二级目录
/bin 系统的常规命令
/sbin 系统的管理命令
/dev 设备文件
/home 普通用户的家目录集合,此目录中的子目录为普通用户的家目录
/root 超级用户家目录
/lib64 64位函数库
/lib 系统函数库
/proc 进程信息,系统识别的硬件信息
/run 当前运行的硬件和系统模块
/srv 系统数据(常量)
/var 系统数据(变量)
/tmp 系统临时文件存放目录
/mnt 临时设备挂载点
/media cdrom临时挂载点
/etc 系统大多数程序的配置目录
/opt 第三方软件安装位置
/boot 系统启动分区,系统启动时读取的文件都在此目录中
/sys 关于内核设定目录
/usr unix system resource 仅次于/重要。多数系统资源都在此目录中
相对路径:绝对路径名称的简写,省略了用户当前所在的系统位置,此名称只有在管理当前所在系统目录中子文件才能使用。系统中不以/开头的文件名称都为相对路径在程序操作时会自动识别当前路径的信息并关联操作目标。
绝对路径:文件在系统中的真实位置,在任何场景下都可以使用。通常以/ 开头,不考虑当前系统的位置。
3.关于文件的寻址命令
1)pwd 显示当前的工作目录
2)cd 切换当前的工作目录
cd -~=cd -
~ 默认代表当前用户的家目录
~username 指定用户的家目录
~+ = . 当前目录
~- 当前目录之前所在的目录
…当前目录的上级目录
3)ls 显示文件信息
ls 显示当前目录中文件的名称
ls file 显示指定文件名称
ls dir 显示指定目录中内容的名称
ls -d dir 显示目录本身的名称
ls -l file 显示文件属性
ls -l dir 显示目录中内容的属性
ls -ld dir 显示目录本身属性
ls -a dir 显示目录中所有文件名称包括隐藏文件
ls -s 显示文件大小
ls -R dir 递归显示目录中的内容
4.文件批量处理
/ * 匹配任意字符
? 匹配单个字符
[ [ :alpha:] ] 匹配单个字母
[ [ :lower:] ] 匹配单个小写字母
[ [ :upper:] ] 匹配单个大写字母
[ [ :digit:] ] 匹配单个数字
[ [ :alnum:] ] 匹配单个数字或字母
[ [ :punct:] ] 匹配单个符号
[ [ :space:] ] 匹配单个空格
字符集合表示方法
[ ] 条件或者关系的模糊匹配,对象有几个操作几个
[1-10] 1到10
[!d-f]和[^ d-f]都代表除了d-f以外
{ } 点名机制,精确指集合中的每一个元素