文件分类
在Linux系统中文件分为:普通文件、目录文件、设备文件、管道文件及链接文件
- 普通文件:属性为-,一般是一些应用程序创建的文档等
- 目录文件:属性为d,这样的文件就是目录文件
- 设备文件:属性为b或c,如磁盘都是块设备文件、打印机和终端都是字符设备文件
- 管道文件,属性为p,管道文件是从一头流入,从另一头流出
- 链接文件,分为软链接和硬链接。软链接也叫符号链接文件,属性为l,硬链接是已存在文件的另一个文件。
root@DESKTOP-LRIII94:~# ls -hl /etc
total 184K
-rw-r--r-- 1 root root 3.0K Oct 30 04:07 adduser.conf
drwxr-xr-x 1 root root 4.0K Dec 5 11:21 alternatives
drwxr-xr-x 1 root root 4.0K Oct 30 04:06 apt
-rw-r--r-- 1 root root 2.0K Jun 18 03:15 bash.bashrc
-rw-r--r-- 1 root root 367 Jan 6 2018 bindresvport.blacklist
drwxr-xr-x 1 root root 4.0K Sep 25 22:11 binfmt.d
常见目录结构
- /home:包含Linux系统上各用户的主目录
- /root:root用户的主目录
- /bin:包含常用的命令文件,不能包含子目录
- /sbin:包含系统管理员和root用户所使用的命令文件
- /dev:包含大部分的设备文件,如磁盘、光驱等
- /lib:包含Linux系统的共享文件和内核模块文件
- /lib64:包含64位版本Linux系统共享文件和内核模块文件
- /tmp:包含一些临时文件
- /mnt:手动为某些设备挂载提供的挂载目录
- /boot:包含Linux系统的内核文件及引导装载程序文件
- /opt:包含某些第三方应用程序的安装文件
- /media:由系统自动为某些设备如U盘、光盘提供的挂载目录
- /var:该目录存放不经常变化的数据,如系统日志、DNS数据库文件等
- /etc:包含Linux系统上大部分的配置文件
- /usr:包含可以提供所有用户使用的程序和数据
- /srv:存储一些服务启动之后所需要的资料目录
- /run:一个临时文件系统
- /proc:一个虚拟的文件系统,她不存在磁盘上,而是由内核在内存中产生,用以提供系统的相关信息
文件和目录操作管理
pwd:显示当前用户所在的工作目录的绝对路径
cd:更改用户的工作目录路径:cd:进入用户主目录、cd ~进入用户主目录、cd -返回进入此目录之前的目录、cd..返回上一级目录
ls:显示其中的所有子目录与文件信息:-a显示所有包括隐藏文件、-l以长格式显示文件的详细信息、-t根据修改时间排序、-S根据文件大小排序
touch:创建空文件、更改文件时间
mkdir:创建目录:-p递归创建、-m设置权限默认755
rmdir:删除目录:-p递归删除
cp:复制文件及目录:cp [选项] [源文件|目录] [目标文件|目录]
mv:重命名及移动文件及目录:mv [选项] [源文件|目录] [目标文件|目录]
rm:删除文件或目录:-r:递归删除、-f:强制删除、-i:删除前确认
链接文件
- 软链接:记录目录的路径,类似快捷方式
- 硬链接:类似备份,记录的是文件目录的inode
ln语法命令:
ln [选项] [源文件] [链接文件]
-s:创建符号链接
root@DESKTOP-LRIII94:~# ln 1.txt 2.txt
root@DESKTOP-LRIII94:~# ls -l
total 0
-rw-rw-rw- 2 root root 0 Dec 10 11:18 1.txt
-rw-rw-rw- 2 root root 0 Dec 10 11:18 2.txt
文件和目录属性
Linux系统支持一些针对文件和目录的额外标记已增强安全性,最常用的是a属性和i属性。
- a:只允许在这个文件内容后面追加数据,不允许任何进程覆盖或截断
- i:文件不能被删除、改名、不能创建文件链接,同时不能写入或新增内容
- A:设置文件或目录被访问时,它的最后访问时间记录不会被记录
使用lsatt和chartr命令可以分别查看和更改文件和目录的属性
1、查看文件和目录属性
lsattr [选项] [文件|目录]
2、设置文件和目录
chattr [选项] [属性设置] [文件|目录]
chattr +i /root/12.txt
常用命令
cat 显示文本文件
more 分页显示文本文件
less 回卷显示文本:-N显示行号
head 显示指定文件前若干行:head -3 /etc/passwd
tail 查看文件末尾数据:tail -3 /etc/passwd
sort 对文本的数据进行排序:-d按照字典排序
uniq 将重复行从输出文件中删除
cut 从文件每行中输出选定的字节,字符或字段
comm 逐行比较两个已排序的文件
diff 逐行比较两个文本文件,列出其不同之处
grep 查找文件中符合条件的字符串
find 列出文件系统内符合条件的文件:-name按照文件名来
locate 在数据库中查找文件
whereis 查找指定文件、命令位置
uname 显示计算机及操作系统相关信息
hostname 显示或修改计算机主机名
cal 显示日历信息
date 显示或设置系统日期及时间
hwclock 查看和设置硬件时钟
echo 在显示器上显示文字
wall 对全部已登录的用户发送信息
write 向指定用户发送信息
clear 清除计算机屏幕信息
uptime 显示系统已运行的时间
type 显示命令类型