作者信息: 房佳亮 (crushlinux@163.com)
 
学习环境:
操作系统
IP地址
主机名
软件包
备注
CentOS7.5
192.168.200.111
localhost
   
 
实验初始配置:所有主机关闭防火墙与selinux
[root@localhost ~]# iptables -F
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
 
[root@localhost ~]# setenforce 0
[root@localhost ~]# sed -i ‘/SELINUX/ s/enforcing/disabled/g’ /etc/sysconfig/selinux
 
Linux目录结构
树形目录结构:
根目录:
  • 所有分区、目录、文件等的位置起点
  • 整个树形目录结构中,使用独立的一个“/”表示
  • 不管计算机拥有多少个分区,多少个硬盘,操作系统使用时只能有一个跟
 
  • /root:系统管理员root的宿主目录
  • /home:普通用户的宿主目录
  • /boot:系统内核、启动文件
  • /dev:设备文件
  • /etc:配置文件
  • /lib /lib64:库文件
  • /tmp:临时文件
  • /media /mnt 默认挂载点
  • /bin:所有用户可执行的命令
  • /sbin:管理员可执行的管理命令
  • /usr /opt:应用程序
  • /var/log:日志文件等
 
cat、nl、tac、rev
用法:cat [选项]… [文件]…
将[文件]或标准输入组合输出到标准输出。
  • -n 显示内容的同时显示行号
  • -A 显示所有的字符 (通常windows系统拷贝过来的文件无法直接cat到,需要加此选项)
 
[root@localhost ~]# cat -n /etc/hosts
1 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@localhost ~]# nl /etc/resolv.conf
1 # Generated by NetworkManager
2 nameserver 202.106.0.20
3 search localdomain
[root@localhost ~]# tac /etc/hosts
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
 
more 全屏方式分页显示文件内容
用法:more [选项] 文件…
快捷键:
  • 按Enter向下滚动一行
  • 按空格键向下滚动一页
  • 按q键退出
 
less 与more基本相同,但扩展功能更多
格式:less [选项] 文件名 (一般不用选项)
快捷键:
  • 按PgUp、PgDn键上下翻页
  • 按“/”键查找内容,“n”下一个,“N”上一个
  • 其他功能与more基本类似
 
head查看文件开头的一部分内容,默认显示10行,可加选项调节
用法:head [选项]… [文件]…
[root@localhost ~]# head -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
 
tail查看文件结尾的一部分内容,默认显示10行,可加选项调节
用法:tail [选项]… [文件]…
  • –f 动态更新尾部的信息=tailf
[root@localhost ~]# tail -3 /etc/passwd
tcpdump:x:72:72::/:/sbin/nologin
mysql:x:1000:1000::/home/mysql:/sbin/nologin
dhcpd:x:177:177:DHCP server:/:/sbin/nologin
 
wc作用:统计文件中的单词数量(Word Count)等
用法:wc [选项]… [文件]…
常用选项:
  • -l:统计行数
  • -w:统计单词个数
  • -c:统计字节数
[root@localhost ~]# wc -l /etc/passwd
45 /etc/passwd
[root@localhost ~]# wc -w /etc/passwd
90 /etc/passwd
[root@localhost ~]# wc -c /etc/passwd
2341 /etc/passwd
[root@localhost ~]# wc /etc/passwd
45 90 2341 /etc/passwd
 
grep
作用:在文件中查找并显示包含指定字符串的行
用法: grep [选项]… PATTERN [FILE]…
  • -i:查找时忽略大小写
  • -v:反转查找,输出与条件不相符的行
  • -E: 查找时支持正则表达式
  • -w: 查找时将条件视为完整单词
 
“^…”表示以…开头
“…$”表示以…结尾
“^$”表示空行
 
egrep=grep -E
作用:增强型过滤
格式:egrep [选项] “查找条件1|查找条件2|查找条件3…” 目标文件
 
gzip
作用:压缩,选项为1-9的数字控制压缩级别,数字越大压缩级别越高。压缩后 文件格式为“.gz”
格式:gzip [-9] 文件名
 
gunzip、gzip –d
作用:解压缩格式为.gz的压缩文件
格式:gunzip 文件名
gzip -d 文件名
 
bzip2
作用:压缩,选项为1-9的数字控制压缩级别,数字越大压缩级别越高。压缩后 文件格式为“.bz2”
格式:bzip2 [-9] 文件名
 
bunzip2、bzip2 –d
作用:解压缩格式为.bz2的压缩文件
格式:bunzip2 文件名
bzip2 -d 文件名
 
tar
作用:制作归档文件、释放归档文件
格式:
  • 归档:tar [选项c…] 归档文件名 源文件或目录
  • 释放:tar [选项x…] 归档文件名 [-C 目标目录]
常用选项:
  • -c 创建.tar格式的包文件
  • -x 解开.tar格式的包文件
  • -v 输出详细信息
  • -f 表示使用归档文件(后面需紧跟归档文件名)
  • -p 打包时保留原始文件及目录的权限(不建议使用)
  • -t 列表查看包内的文件
  • -C 解包时指定释放的目标目录
  • -z 调用gzip程序进行压缩或解压
  • -j 调用bzip2程序进行压缩或解压
  • -P打包时保留文件及目录的绝对路径(不建议使用)
  • –remove 选项打包压缩时可删除源文件
 
注意:
1、tar命令的选项前可以省略“-”,在解压时无需选择“-z”或“-j”,命令可以自行识别
2、tar命令通过-zcf 选项创建打包压缩文件时(.tar.gz = .tgz)
 
额外扩展:
1、tar命令实现增量备份
完整备份:
 
建立测试路径与档案
[root@localhost ~]# mkdir test
[root@localhost ~]# touch test/{a,b,c}
在test目录下生成三个文件
 
执行完整备份
[root@localhost ~]# tar -g snapshot -zcf full.tar.gz test/
 
查看 tarball 内容
[root@localhost ~]# tar tf full.tar.gz
test/
test/a
test/b
test/c
 
差异+增量备份 :
新增一个档案, 并修改一个档案内容
[root@localhost ~]# touch test/e
[root@localhost ~]# echo 123 > test/a
 
执行第二次的增量备份 (注意 tarball 档名)
[root@localhost ~]# tar -g snapshot -zcf full_2.tar.gz test
 
查看 tarball 内容
[root@localhost ~]# tar tf full_2.tar.gz
test/
test/a
test/e
 
还原备份资料:清空测试资料
[root@localhost ~]# rm -rf test/
 
开始进行资料还原
[root@localhost ~]# tar xf full.tar.gz
[root@localhost ~]# tar xf full_2.tar.gz
 
查看测试资料
[root@localhost ~]# ls test/
a b c e
 
 
2、打包某个目录下的所有文件时忽略某个文件
[root@localhost ~]# mkdir /tardir
[root@localhost ~]# touch /tardir/{11,22,33,44,55}
[root@localhost ~]# ls -l /tardir/
总用量 0
-rw-r–r– 1 root root 0 12月 14 16:59 11
-rw-r–r– 1 root root 0 12月 14 16:59 22
-rw-r–r– 1 root root 0 12月 14 16:59 33
-rw-r–r– 1 root root 0 12月 14 16:59 44
-rw-r–r– 1 root root 0 12月 14 16:59 55
[root@localhost ~]# tar zcf num.tar.gz –exclude=/tardir/11 –exclude=/tardir/22 /tardir
tar: 从成员名中删除开头的“/”
[root@localhost ~]# tar tf num.tar.gz
tardir/
tardir/33
tardir/44
tardir/55
 
或者
[root@localhost ~]# tar zcf num.tar.gz –exclude-from /tardir/excludefile /tardir
tar: 从成员名中删除开头的“/”
[root@localhost ~]# tar tf num.tar.gz
tardir/
tardir/33
tardir/44
tardir/55
tardir/excludefile
 
3、tar命令打包压缩时忽略目录
[root@localhost ~]# tar zcf file.tar.gz -C /etc/ passwd
[root@localhost ~]# tar tf file.tar.gz
passwd
 
 
文本编辑器的作用
创建或修改文本文件
维护 Linux 系统中的各种配置文件
 
Linux中最常用的文本编辑器
vi:类UNIX操作系统的默认文本编辑器
vim:vim是vi文本编辑器(一般简称为vi编辑器)的增强版本
 
三种工作模式
命令模式、输入模式、末行模式
 
不同模式之间的切换
  • a 在光标后插入内容
  • A 在光标所在行末尾插入内容
  • i 从当前光标前插入内容
  • I 在光标所在行行首插入内容
  • o 在当前光标下插入空行
  • O 在当前光标上插入空行
 
光标移动
复制、粘贴、删除
文件内容查找
撤销编辑及保存退出
保存文件及退出vi编辑器
打开新文件或读入其他文件内容
文件内容替换
 
常规操作的补充:
  • 😡 保存退出 但如果未修改,时间戳不改变
  • :w file 将当前文件另存为file (vim)
  • :X 加密(vim)
  • :7 跳转到第7行
  • :1,$ co $ 从第一行到第最后一行复制,到最后一行后
  • J 合并当前行和下一行
  • ctrl+r 对使用u命令撤销操作进行恢复
 
vim可视化模式操作:
 
 
vim学习工具:vimtutor
 
vim键盘图

版权声明:本文为crushlinux原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/crushlinux/p/10121912.html