一.文件管理命令
1.touch
touch file1 file2... #建立空文件file1、file2等等
touch file #把文件file的时间同步到当前时间
touch -t YYYYMMDDHHmm file #把文件时间更改到指定时间(注意不能缺少HHmm)
2.mkdir
mkdir dir1 dir2 ... #建立空目录dir1、dir2
mkdir -p test/redhat/linux #建立多层目录( 注意最上层目录前无“/” )
3.rm
rm file file1... #删除文件有提示
rm -f file #强制删除文件不提示(-f=force)
rm -r dir dir1... #删除目录(r=recursive,递归的)
rm -rf dir #强制删除目录不提示
4.gedit
#图形的文本编辑器
gedit file file1... #编辑 file file1等文件
#使用时必须有图形
5.vim
vim file #进入到vim的浏览模式
6.cat
cat file #在shell中显示文件的全部内容
cat -b file #显示文件内容并显示行号,不显示空行的行号
cat -n file #显示文件内容及行号,并显示空行的行号
tac file #倒序输出文件的内容
7.head
head file #默认显示文件前10行
head -n file #显示文件的前 n 行
8.tail
tail file #默认显示文件后 10 行
tail -n file #显示文件的后 n 行
tail -f file #动态查看一个文件内容的输出信息
9.less
#分页浏览
less file
Tips:
1.less 模式中<上><下>逐行查看文件内容
2.<pgup><pgdn> 逐页查看文件内容
3./+关键字 搜索关键字
4.n 向下匹配 N 向上匹配
5.<v> 进入到vim编辑,完成后:wq退出返回less
6.<q> 退出
10.cp
cp file dir #将file复制dir下
cp file1 file2 dir #将文件1、文件2复制到dir下
cp -r dir1 dir2 #将目录1复制到目录2
11.mv
mv file1 file2 dir #将文件1、2移动至dir中
mv dir1 dir2 dir #将文件夹1、2移动至dir中
mv file 不存在file #文件重命名
12.ls
ls -i file #查看文件节点号
13.file
file [文件名] #文件类型的查看
二.Linux中文件的寻址
Linux系统结构
FHS (Filesystem Hierarchy Standard) Linux 层级结构标准 3
系统二级目录
目录 | 存放内容 |
---|---|
/bin | 系统常规命令 |
/sbin | 超级命令目录,只能超级管理员可以执行的命令/dev |
/home | 普通用户的家目录 |
/root | 超级用户家目录 |
/lib64 | 64位函数库 |
/lib | 系统函数库 |
/proc | 虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。 |
/run | 当前运行的硬件和系统模块 |
/srv | 系统数据(常量) |
/var | 系统数据(变化) |
/tmp | 系统临时文件存放目录 |
/mnt | 挂载目录,用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区 |
/media | 挂载目录,早期Linux挂载目录,用于挂载光盘以及软盘 |
/etc | 系统大多数程序的配置目录 |
/opt | 第三方软件安装位置 |
/boot | 系统启动分区,系统启动时读取的文件都在此目录中 |
/sys | 关于内核设定目录 |
/usr | unix system resource 多数系统资源 |
1.pwd命令
pwd #显示当前的工作目录
2.cd命令
cd [目录名] #切换当前的工作目录
3.ls命令
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 #递归显示目录中的内容
三.文件批量处理
* 匹配0~任意字符
? 匹配单个字符
[[:alpha:]] 匹配单个字母
[[:lower:]] 匹配单个小写字母
[[:upper:]] 匹配单个大写字母
[[:digit:]] 匹配单个数字
[[:alnum:]] 匹配单个数字或字母
[[:punct:]] 匹配单个符号
[[:space:]] 匹配单个空格
[ ] 条件是或者关系是模糊匹配,对象和几个对比匹配就操作
[1-10] 1到10
[!d-f] [^d-f] 除了d-f以外
{ } 点名机制,经精确指定集合中的每一个元素
{1..10} 表示1-10
{a..c} 表示a-c
注意:
1.用[ ]调用文件时,连接符为 “-”,用{ }调用文件时,连接符为“...”。
2.批量建立文件时需用 { } ,才可精确建立多个文件
~- 当前目录之前所在目录
~ 默认代表当前用户家目录
.. 当前目录的上级目录
四.文件查找(find)
基本语法:
find 搜索路径 [选项]
选项说明:
-name:指定要搜索文件的名称,支持*星号通配符
-type:代表搜索的文件类型,f代表普通文件,d代表文件夹=>加快检索速度
☆举例:搜索/var目录中boot.log文件(普通文件)
find /var -name "boot.log" -type f
☆举例:全盘搜索ssh目录
find / -name "ssh" -type d
☆举例:搜索/var/log目录下的所有的以".log"结尾的文件信息
find /var/log -name "*.log" -type f
五.文件统计命令(wc和du)
1.wc命令
基本语法:
wc [选项] 文件名称
#选项说明:
#-l:表示lines,行数(以回车/换行符为标准)
#-w:表示words,单词数 依照空格来判断单词数量
#-c:表示bytes,字节数(空格,回车,换行)
☆案例:统计linux.txt文件的总行数
wc -l linux.txt
☆案例:统计linux.txt文件中的单词数
wc -w linux.txt
☆案例:统计文件的字节数(数字、字母一般1个字符=1个字节,中文和编码格式有关,如utf-8编码格式,1个汉字占用3个字节)
wc -c linux.txt
☆案例:统计一个文件的总行数、总单词数以及总字节数
wc -wlc linux.txt
2.du命令
基本语法:
du [选项] 统计的文件或文件夹
#选项说明:
#-s :summaries,只显示汇总的大小,统计文件夹的大小
#-h :以较高的可读性显示文件或文件夹的大小,(KB/MB/GB/TB)
主要功能:查看文件或目录(会递归显示子目录)占用磁盘空间大小
☆案例:显示readme.txt文件的大小(占用磁盘空间,不显示文件大小的单位)
du readme.txt
☆案例:显示readme.txt文件的大小(占用磁盘空间,显示文件大小的单位)
du -h readme.txt
☆案例:统计wechat文件夹的大小
du -sh wechat
☆案例:统计/etc目录的大小
du -sh /etc