linux-目录与文件管理

171 阅读9分钟

文件目录

常见目录

一级目录功能(作用)
/bin/存放系统命令,普通用户和 root 都可以执行。放在 /bin 下的命令在单用户模式下也可以执行
/boot/系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等
/dev/设备文件保存位置
/etc/配置文件保存位置。系统内所有采用默认安装方式(rpm 安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等
/home/普通用户的主目录(也称为家目录)。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在 /home/ 下建立一个和用户名相同的目录。如用户 liming 的主目录就是 /home/liming
/lib/系统调用的函数库保存位置
/media/挂载目录。系统建议用来挂载媒体设备,如软盘和光盘
/mnt/挂载目录。早期 Linux 中只有这一个挂载目录,并没有细分。系统建议这个目录用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区
/misc/挂载目录。系统建议用来挂载 NFS 服务的共享目录。虽然系统准备了三个默认挂载目录 /media/、/mnt/、/misc/,但是到底在哪个目录中挂载什么设备可以由管理员自己决定。例如,笔者在接触 Linux 的时候,默认挂载目录只有 /mnt/,所以养成了在 /mnt/ 下建立不同目录挂载不同设备的习惯,如 /mnt/cdrom/ 挂载光盘、/mnt/usb/ 挂载 U 盘,都是可以的
/opt/第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到 /usr/local/ 目录中,也就是说,/usr/local/ 目录也可以用来安装软件
/root/root 的主目录。普通用户主目录在 /home/ 下,root 主目录直接在“/”下
/sbin/保存与系统环境设置相关的命令,只有 root 可以使用这些命令进行系统环境设置,但也有些命令可以允许普通用户查看
/srv/服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据
/tmp/临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空

常见次级目录

/user目录

子目录功能(作用)
/usr/bin/存放系统命令,普通用户和超级用户都可以执行。这些命令和系统启动无关,在单用户模式下不能执行
/usr/sbin/存放根文件系统不必要的系统管理命令,如多数服务程序,只有 root 可以使用。
/usr/lib/应用程序调用的函数库保存位置
/usr/XllR6/图形界面系统保存位置
/usr/local/手工安装的软件保存位置。我们一般建议源码包软件安装在这个位置
/usr/share/应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录
/usr/src/源码包保存位置。我们手工下载的源码包和内核源码包都可以保存到这里。不过笔者更习惯把手工下载的源码包保存到 /usr/local/src/ 目录中,把内核源码保存到 /usr/src/linux/ 目录中
/usr/includeC/C++等编程语言头文件的放置目录

/var目录

/var子目录功能(作用)
/var/lib/程序运行中需要调用或改变的数据保存位置。如 MySQL 的数据库保存在 /var/lib/mysql/ 目录中
/var/log/登陆文件放置的目录,其中所包含比较重要的文件如 /var/log/messages, /var/log/wtmp 等。
/var/run/一些服务和程序运行后,它们的 PID(进程 ID)保存位置
/var/spool/里面主要都是一些临时存放,随时会被用户所调用的数据,例如 /var/spool/mail/ 存放新收到的邮件,/var/spool/cron/ 存放系统定时任务。
/var/www/RPM 包安装的 Apache 的网页主目录
/var/nis和/var/ypNIS 服务机制所使用的目录,nis 主要记录所有网络中每一个 client 的连接信息;yp 是 linux 的 nis 服务的日志文件存放的目录
/var/tmp一些应用程序在安装或执行时,需要在重启后使用的某些文件,此目录能将该类文件暂时存放起来,完成后再行删除

linux指令

显示指令

1 cat

格式: cat [-选项] 目标文件(单个或多个)

选项效果
-n显示行号包括空行
-b跳过空白行编号
-s将所有的连续的多个空行替换为一个空行(压缩成一个空行)
-A显示隐藏字符
  • 查看非文本文件内容hexdump
  • -C:输出规范的十六进制和ASCII码
  • -n length:格式化输出文件的前length个字节

2 more

格式: more [-选项] 文件名

more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读

基础操作

  • Enter 向下n行,需要定义。默认为1行
  • Ctrl+F 向下滚动一屏
  • 空格键 向下滚动一屏
  • Ctrl+B 返回上一屏
  • = 输出当前行的行号
  • :f 输出文件名和当前行的行号
  • V 调用vi编辑器
  • !命令 调用Shell,并执行命令
  • q 退出more

3 less

格式:less [-选项] 文件名

基础操作:

  • 可以使用/ 查找 n向下 N向上查找
  • Page Up 向上翻页,Page Down 向下翻页
  • 其他可参考more

4 head/tail

  • head -n [数] 文件名 显示文本开始[数]的行数 默认10行
  • tail -n [数] 文件名 显示文本末尾[数]的行数 默认10行
  • tail -f [数] 文件名 实时跟踪文本末尾[数]的行数 默认10行

5 tr 转换

格式: tr [-选项] SET1(被转换目标) SET2(转换内容)

ps:SET是一组字符串,一般都可按照字面含义理解

选项:

  • -c, --complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
  • -d, --delete:删除指令字符
  • -s, --squeeze-repeats:缩减连续重复的字符成指定的单个字符
  • -t, --truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

6 cut

格式: cut [-选项] [文件] 作用:提取文本文件数据的指定列 选项:

选项作用
-b以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c以字符为单位进行分割。
-d自定义分隔符,默认为制表符。
-f与-d一起使用,指定显示哪个区域。
-n取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的范围之内,该字符将被写出;否则,该字符将被排除

7 wc

格式: wc [-选项] 目标文件

作用:统计列数,wc本身就是参数 word

选项:

  • -l:统计行数
  • -w:统计单词个数
  • -c:统计字节数

8 grep

格式: grep [-选项] 表达式 目标文件

选项作用
i查找时忽略大小写
v反向查找,输出与查找条件不相符的行
o只显示匹配项
f对比两个文件的相同行
c匹配的行数

基本格式

  • 要查找的字符串以双引号括起来单引号也可以
  • “^……”表示以……开头,“……$”表示以……结尾
  • “^$”表示空行

9 paste 合并

格式: paste [-选项] 文件 文件 选项:

  • -d<间隔字符>或--delimiters=<间隔字符>  用指定的间隔字符取代跳格字符。
  • -s或--serial  串列进行而非平行处理。

10 sort 排列

格式:sort [-选项] 文件

选项:

选项作用
-r执行反方向(由上至下)整理
-R随机排序
-n执行按数字大小整理
-h人类可读排序,如: 2K 1G
-f选项忽略(fold)字符串中的字符大小写
-u选项(独特,unique),合并重复项,即去重
-t指定分隔符
-k 指定列

11 uniq 去重

格式:uniq [-选项] 文件

选项:

选项作用
-c:显示每行重复出现的次数
-d:仅显示重复过的行
-u:仅显示不曾重复的行

解压缩

gzip和bzip都是压缩软件,比如windows里的好压和360 压缩或微软自带的等等

1 gzip2 bzip

压缩:

gzip [-9] 文件名… 提高压缩比例,但是文件较大时效率会低
bzip2 [-9] 文件名...

解压:

gzip -d .gz格式的压缩文件 //d就是解压
bzip2 -d .bz2格式的压缩文件

ps:9代表压缩比率,9最大1最小,使用以上两种压缩源文件不存在了

  • gzip的压缩率 要高于bzip2

  • 不会使用 因为只能对文件操作

2 tar 归档

格式:
tar [-选项] ... 归档文件名(压缩包名字) 源文件 或 目录
tar [-选项] ... 归档文件名 [-C 目标目录]

选项:

选项作用
-c创建(Create).tar 格式的包文件
-x解开.tar 格式的包文件
-C解压时指定释放的目标文件夹
-f表示使用归档文件(一般都要带上表示使用tar)
 -p打包时保留文件及目录的权限
-P打包时保留文件及目录的绝对径
-t列表查看包内的文件(要和f一起使用)
-v输出详细信息(Verbose)
-j调用 bzip2 程序进行压缩或解压
-z调用 gzip 程序进行压缩或解压