Linux基础(5)了解不同目录的主要任务 学会查看文件 了解压缩和解压缩 了解vi编辑

一级目录

/bin/       存放系统命令,普通用户和 root 都可以执行。放在 /bin 下的命令在单用户模式下也可以执行

/sbin/     保存与系统环境设置相关的命令,只有 root 可以使用这些命令进行系统环境设置,但也有些命令可以允许普通用户查看

/boot/     系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等

/dev/     设备文件保存位置

/etc/      配置文件保存位置。系统内所有采用默认安装方式(rpm 安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等

/root/   root 的主目录。普通用户主目录在 /home/ 下,root 主目录直接在“/”下

/home/ 普通用户的主目录(也称为家目录)。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在 /home/ 下建立一个和用户名相同的目录。如用户dy的主目录就是 /home/dy

/opt/     第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到 /usr/local/ 目录中,也就是说,/usr/local/ 目录也可以用来安装软件

/tmp/   临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空

/srv/   服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据

/lib/    系统调用的函数库保存位置

/mnt/    挂载目录。早期 Linux 中只有这一个挂载目录,并没有细分。系统建议这个目录用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区

/media/   挂载目录。系统建议用来挂载媒体设备,如软盘和光盘

/misc/     挂载目录。系统建议用来挂载 NFS 服务的共享目录。虽然系统准备了三个默认挂载目录 /media/、/mnt/、/misc/,但是到底在哪个目录中挂载什么设备可以由管理员自己决定。例如,笔者在接触 Linux 的时候,默认挂载目录只有 /mnt/,所以养成了在 /mnt/ 下建立不同目录挂载不同设备的习惯,如 /mnt/cdrom/ 挂载光盘、/mnt/usb/ 挂载 U 盘,都是可以的

二级目录/usr

usr(注意不是 user),全称为 Unix Software Resource,此目录用于存储系统软件资源。FHS 建议所有开发者,应把软件产品的数据合理的放置在 /usr 目录下的各子目录中,而不是为他们的产品创建单独的目录。

Linux 系统中,所有系统默认的软件都存储在 /usr 目录下,/usr 目录类似 Windows 系统中 C:\Windows\ + C:\Program files\ 两个目录的综合体。

/usr/bin/  存放系统命令,普通用户和超级用户都可以执行。这些命令和系统启动无关,在单用户模式下不能执行

/usr/sbin/  存放根文件系统不必要的系统管理命令,如多数服务程序,只有 root 可以使用

/usr/share/   应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录

/usr/src/  源码包保存位置。我们手工下载的源码包和内核源码包都可以保存到这里。不过笔者更习惯把手工下载的源码包保存到 /usr/local/src/ 目录中,把内核源码保存到 /usr/src/linux/ 目录中

/usr/local/  手工安装的软件保存位置,我们一般建议源码包软件安装在这个位置

/usr/lib/   应用程序调用的函数库保存位置

/usr/XllR6/   图形界面系统保存位置

/usr/include  C/C++ 等编程语言头文件的放置目录

二级目录/var

/var 目录用于存储动态数据,例如缓存、日志文件、软件运行过程中产生的文件

/var/log/   登陆文件放置的目录,其中所包含比较重要的文件如 /var/log/messages, /var/log/wtmp 

/var/run/  一些服务和程序运行后,它们的 PID(进程 ID)保存位置

/var/lib/  程序运行中需要调用或改变的数据保存位置。如 MySQL 的数据库保存在 /var/lib/mysql/ 目录中

/var/www/   RPM 包安装的 Apache 的网页主目录

/var/tmp  一些应用程序在安装或执行时,需要在重启后使用的某些文件,此目录能将该类文件暂时存放起来,完成后再行删除

var/nis和/var/yp  NIS 服务机制所使用的目录,nis 主要记录所有网络中每一个 client 的连接信息;yp 是 linux 的 nis 服务的日志文件存放的目录

/var/spool/  里面主要都是一些临时存放,随时会被用户所调用的数据,例如 /var/spool/mail/ 存放新收到的邮件,/var/spool/cron/ 存放系统定时任务

关于文件和路径的一些注意事项

  • 以 . 开头的文件均为隐藏文件

  • 路径用/分开 / 不在第一位就是分隔符

  • 文件名最长 255个字符

  • 区分大小写

查看文件常用的命令

cat

-n  显示行号包括空行

-b 跳过空白行编号

-s 将所有的连续的多个空行替换为一个空行(压缩成一个空行)

-A 显示隐藏字符

格式

cat 文件名(文件名可以是单个也可以是多个)

查看非文本文件内容
hexdump
    -C:输出规范的十六进制和ASCII码
    -n length:格式化输出文件的前length个字节

 

more [选项] 文件名

基本操作

  • 空格下一行 到文末后自动退出

  • b上一行

  • enter一行一行滚动

  • 自动退出

  • q退出

 

 

less [选项] 文件名

  • 可以使用/ 查找 n向下 N向上查找

  • Page Up 向上翻页,Page Down 向下翻页

 

head -n 具体数字 文件名 (不加具体的数字,默认开头十行)

tail -n 具体数字 文件名 (不加具体的数字,默认结尾十行)

tail -f 具体数字 文件名 实时跟踪最后十行

 

tr 基本功能转换

格式

tr  [选项]... SET1 [SET2]

 

-d 删除

-s 压缩

-c 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII。

 

 

cut 命令可以提取文本文件数据的指定列

格式

cut [选项]... [文件]...

-d DELIMITER: 指明分隔符,默认tab
-f 想要获取的字段
     #: 第#个字段,例如 3
     #,#[,#]:离散的多个字段,例如 1,3,6
     #-#:连续的多个字段, 例如 1-6
     混合使用:1-3,7
-c   取字符

 

wc [选项]... 目标文件..

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

  • -l:统计行数

  • -w:统计单词个数

  • -c:统计字节数

 

 grep

基本格式

grep [选项]… 查找条件 目标文件

  • -i:查找时忽略大小写

  • -v:反向查找,输出与查找条件不相符的行

  • -o 只显示匹配项

  • -f 对比两个文件的相同行

  • -c 匹配的行数

 查找的条件格式

  • 要查找的字符串以双引号括起来单引号也可以

  • “^……”表示以……开头,“……$”表示以……结尾

  • “^$”表示空行

 

paste  合并文件

 -d 指定分隔符

sort   排序

sort [options] file(s)

常用选项:

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

 

去重  uniq

 

uniq [OPTION]... [FILE]...

-c: 显示每行重复出现的次数

-d: 仅显示重复过的行

-u: 仅显示不曾重复的行

uniq常和sort 命令一起配合使用

 

 

压缩,解压缩

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

 gzip bzip2

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

bzip2 [-9] 文件名...

gzip -d .gz格式的压缩文件

d就是解压

bzip2 -d .bz2格式的压缩文件

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

gzip的压缩率 要高于bzip2

 

 

归档tar

tar (tape archive)

tar [选项] ... 归档文件名 源文件或目录

tar [选项] ... 归档文件名 [-C 目标目录]

  • -c:创建(Create).tar 格式的包文件

  • -x:解开.tar 格式的包文件

  • -C:解压时指定释放的目标文件夹

  • -f:表示使用归档文件(一般都要带上表示使用tar)

  • -p:打包时保留文件及目录的权限

  • -P:打包时保留文件及目录的绝对径

  • -t:列表查看包内的文件(要和f一起使用)

  • -v:输出详细信息(Verbose)

  • -j:调用 bzip2 程序进行压缩或解压

  • -z:调用 gzip 程序进行压缩或解压

 

vi编辑器

一切皆文件”,因此当我们在命令行下更改文件内容时,不可避免地要用到文本编辑器

基本格式:

vim [选项]... ...
命令  选项       文件

vim  文件名不存在  是新建
vim  文件名存在   就是修改

+#            打开文件后,让光标处于第#行的行首,+默认行尾
!            打开上一次的文件

三种常见模式:

  1. 命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴文本

  2. 插入(Insert)或编辑模式:用于修改文本

  3. 扩展命令(extended command )或末行模式:保存,退出等搜索替代

 

命令模式

  • 命令模式:此模式下,可使用方向键(上、下、左、右键)或 k、j、h、i 移动光标的位置,还可以对文件内容进行复制、粘贴,替换和删除

 ZZ 保存退出
ZQ 不保存退出

yy:复制行
#yy 复制多行

Y:复制整行

dd:   剪切光标所在的行
#dd 多行删除

D:从当前光标位置一直删除到行尾,等同于d$

G 最后一行
1G, gg 第一行

输入模式

输入模式: 使 Vim 进行输入模式的方式是在命令模式状态下输入 i、I、a、A、o、O 等插入命令,进入到输入模式下对内容进行编辑,当完成后按 Esc 键即可返回命令模式。

末行模式

  • 末行模式:文件中的指定内容执行保存、查找和替换的功能

使 Vim 切换到编辑模式的方法是在命令模式状态下按“:”(英文冒号)键,此时 Vim 窗口的左下方出现一个“:”符号,这是就可以输入相关指令进行操作了。  

#             #具体第#行,例如2表示第2行
#,#         #从左侧#表示起始行,到右侧#表示结尾行 
#,+#         #从左侧#表示的起始行,加上右侧#表示的行数,范例:2,+3 表示2到5行
.           #当前行
$             #最后一行
.,$-1         #当前行到倒数第二行
%             #全文, 相当于1,$

 d       #删除
y         #复制

查找并替换

格式:
范围  s/要查找的内容/替换的内容/g

tab用指定空格的个数代替

启用:set tabstop=#    指定#个空格代替Tab
简写:set ts=4

加密

启用: set key=password
禁用: set key=

set 帮助 set all

配置文件定制vim的工作特性

Vim 启动时,会根据配置文件(.vimrc)来设置 Vim,因此我们可以通过此文件来定制适合自己的 Vim 操作习惯

/etc/vimrc #全局
~/.vimrc #个人

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南京的山南

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值