目录
【13】.cat 查看文件中的内容(支持标准输出和标准输入)
【15】.tail用于从文件最后查看内容,默认查看文件最后10行
【20】.★★★★★find:从头找到尾(递归方式)【名称、类型、大小、等不同属性进行查找】
一.虚拟机网络环境--网卡的三种连接方式
- 桥接模式:虚拟机和本机使用同一个物理网卡,共享主机IP地址
- nat模式:内外网地址转换,生成一个VMware8网卡,此网卡必须与虚拟机在同一个网段,虚拟机才可上网。
- 仅主机模式:主机和虚拟机在独立的网络,不能上外网
二Linux基础知识
1.命令行头解释
[root@localhost ~]# 例如root用户登录的行头
①第一个root代表的是当前用户名是root。
②第二个localhost是主机名称为localhost。
③第三个 ~ 表示所在目录位置,~表示当前用户的家目录,root的家目录为/root,普通用户的家目录在/home下有个同名文件,例如zhangsan用户的家目录为/home/zhangsan。
2.文件具体信息含义
查看目录具体信息,共8段如下图:
①d ②r-xr-xr-x. ③5 ④root ⑤root ⑥4096 ⑦11月 13 12:25 ⑧boot
①第1段表示文件类型,文件类型共分7种
- :代表该文件为普通文件
d :表示为文件夹
l :链接文件,相当于windows的快捷方式
p :管道文件,单向进程交互
s :套接字,双向进程交互
b :块设备,表示硬件储存设备,按块读取
c :表示字符文件,一个字节一个字节的读取
②第2段表示文件的权限(目前只要了解r为可读、w可写、x可执行即可,后面会详细讲解)
③第3段表示硬链接数
④第4段表示所属用户
⑤第5段表示所属组
⑥第6段表示文件大小
⑦第7段表示文件最近一次修改时间
⑧第8段表示文件名称
3.键盘快捷键
①ctrl +c:停止命令 ②ctrl+u:从光标处清空至行首
③ctrl +l:清空屏幕 ④ctrl+k:从光标处清空到行尾
⑤ctrl+a:光标跳至行首 ⑤ctrl+e:光标跳至行尾
⑥ctrl+s:锁屏,可以输入命令但是不显示 ⑥ctrl+q:解除锁屏
⑦Tab键:如果命令唯一则直接补全,如果命令不唯一则补全所有可能命令。
三.基础命令
1.命令分类
-
内部命令:集成在系统shell中,安装系统后即存在,读取快。
-
外部命令:需要安装,在系统中有个单独对应的系统文件,读取慢于内存命令。
-
Hash:缓存,外部命令最近输入过一次后会存在Hash缓存中,读取快于外部命令,慢于内部命令。
2.命令格式
命令字 [选项] [参数]
命令字:表示想用什么命令要做什么。
选项:补充命令,使命令更完美或更具体。
参数:代表要对什么进行操作,例如文件、文件夹、用户等。
3.查询命令帮助
type +命令可以查询是内部命令还是外部命令
内部命令:help +命令
外部命令:命令+ --help选项
man书:man 第一章节主要为命令解释,man 第五章节为文件格式。
4.基础命令
【1】.pwd:用于查看当前所在路径。
【2】.cd:用于切换目录
cd -表示回到上一次访问的目录,只能记录上一次的,例如从A目录到B目录在B目录中输入cd -则会返回A目录,此时再输入cd -则表示上一次目录是B目录。
cd ~ 表示回到当前用户的家目录。
cd .. 返回上一级目录
【3】.ls:用于显示文件内容
-a 显示所有文件包括隐藏文件,包括 . 和 .. (.表示当前文件,..表示上级文件)
-l 显示长格式文件,8段全部显示出来,权限、最后修改时间、文件大小文件名等
-A 显示所有文件包括隐藏文件,但是不包括 . 和 ..(.表示当前文件,..表示上级文件)
-t 按时间顺序显示内容,默认按最近时间在上顺序显示
-r 倒叙显示,例如与-t配合使用可以按文件最远时间到最近时间排序
-S 按文件大小排序,默认从大到小排序
-R 递归显示,例如ls -R / 则显示根目录下所有文件夹内的所有内容
-i 显示inode 就是每个文件的身份证号一样,在系统中唯一
【4】.alias 别名
有些命令比较长,我们会使用别名来重新定义比较长的命令
alias 直接打可以看系统中所有的别名
alias 自定义命令 = "原始命令"
命令执行的过程
别名>内部>hash>外部
【5】.du 查看磁盘使用量
du disk use 磁盘使用量,可以统计 文件占磁盘的大小。
du等命令排查文件夹或文件,找出比较大的文件,确定可以用的垃圾文件 临时文件删除。
-a 平均
-s 总和
-h 人性化
-d 数字 按层级显示
与ls相比 du看到的是文件占磁盘的大小,不足4k按4k算
ls -l看到的是真实的文件大小
可以统计 文件占磁盘的大小
-a 平均
-s 总和
-h 人性化
-d 数字 按层级显示
与ls相比 du看到的是文件占磁盘的大小,不足4k按4k算
ls -l看到的是真实的文件大小
【6】.通配符
* :代表任意字符,例如ls *.txt则表示显示所有以.txt结尾的文件。
?:代表任意一个字符,例如ls ?.txt则表示显示一个任意字符的.txt文件。
{a..z}:代表a b c d ..x y z。
[a-z]:代表取括号里任意一个字符,有则取没有也无所谓不会报错。
^:取反,例如下图显示除数字开头的文件。
【7】.mkdir 创建文件夹
mkdir + 文件夹的名字
mkdir aa bb cc 建立三个文件夹 为aa bb cc
mkdir -pv 一次建立多个文件夹
【8】.touch
1.建立空文件 2.刷新文件时间
当文件名不存在时 是新建空文件;
当文件名存在时 是刷新文件时间。
【9】.软链接与硬链接
硬链接:不能对文件夹做链接,不方便。
软链接:(win快捷方式) 可以对文件夹做链接 使用软链接。
a. 硬链接
ln 源文件 自定义名字
b. 软链接
ls -s 源文件(文件夹) 自定义名字
例:做/ect/passwd 文件的 软链接 到mnt 取名为soft
ln -s /ect/passwd /mnt/soft
使用链接命令的小tips:
我现在在哪里?
我要做什么操作用什么命令?
我要处理哪个源文件,源文件的位置描述清楚了吗?
把源文件放到哪里去,位置是否描述清楚?
目标文件放到哪里去了?
c.软硬链接的区别
注意:删除软链接时一定不要在软链接文件名后加/,不加/代表删除软连接,加/则会把源文件内容也删除
【10】.cp 拷贝文件或文件夹
格式:cp [选项] 源文件或文件夹 目标文件或文件夹
-f 表示强制复制不询问
-r 递归复制,复制文件夹时必须使用
-a 复制文件所有权限
-v 显示复制过程
-i 有同名文件提示覆盖,系统默认cp是别名,表示cp -i
注意:拷贝多个文件时,目标必须为文件夹。
例:cp /etc/passwd /mnt/123 改名复制到mnt文件夹
cp /etc/passwd /mnt/ 不改名复制到mnt文件夹
cp /etc/passwd /etc/shadow /mnt/ 连续复制到mnt文件夹
【11】.mv
a. 改名字
格式:mv 源文件 目标文件
源文件和目标文件位置不变 --- 改名字
mv test test1 将文件test改成test1
b.移动文件
mv /opt/test /mnt/test1
既移动又改名
mv /opt/test /mnt/
只移动 不改名
【12】.rm 删除
格式:rm -rf 文件
【13】.cat 查看文件中的内容(支持标准输出和标准输入)
用法:
cat 【选项】 文件或者标准输入
cat 文件名字
cat -n 显示行号
cat -b 跳过空行显示行号
cat -A 显示隐藏字符
cat -s 压缩空行(连续的空行)
上下合并
cat a b > newfile
【14】.head用于查看文件内容,默认为查看前10行内容
head -n 文件名 默认显示文件前n行
head 文件名 默认看文件的前十行
head -c 数字 字节 取前数字个字节
【15】.tail用于从文件最后查看内容,默认查看文件最后10行
tail -n 文件名 默认显示文件后n行
tail 文件名 默认显示文件前十行
tail -f 实时查看文件★★★★★
tail -n +数字 从数字行开始显示★★★★★
【16】.wc 统计
默认显示文件内容顺序为,文件行数、文件单词数、文件字符数(包括回车等) 文件名
wc -l 统计行数
wc -w 统计单词个数(不是真正的单词)
wc -c 统计字节数
【17】.grep ★★★★★ 过滤 查找你感兴趣的字符
grep 选项 表达式 文件名或者标准输入(选项可以到处放)
grep -n 显示匹配的行号
grep -v 反向选择
grep -E 启用扩展正则 不用写 \
grep -i 忽略大小写
grep -f 处理两个文件相同内容,把第一个文件作为匹配条件
grep -r 递归过滤文件夹 -R 连软连接一起过滤
正则表达式:1.元字符 . 任意单个字符
2.表示字符出现的次数
3.位置牟定
^ 字符的开头 ^bash
$ 字符的结尾 bash$
^$ 空行
【18】.tar
gzip -d 压缩文件名 解压缩
gzip -9 文件名 压缩 (9是最高的压缩级别 压缩级别越高 压得越小)
后缀 gz
bzip2 -d 压缩文件名 解压缩
bzip2 -9 文件名 压缩
后缀 bz2
(以上不能对文件夹压缩)
tar 归档压缩 (最好使用相对路径 不建议使用绝对路径)★★
如果选项加了 - , f一定要在最后 如果不带- ,f位置无所谓
f 必带 只要出现tar,必须出现f选项,代表使用tar
c 建立压缩归档文件
v 显示压缩过程或者显示解压过程
z 使用gzip 压缩
j 使用bzip2 压缩
x 解压
t 不解压查看压缩包中的内容 要加f选项
C 指定压缩
建立压缩
tar 选项 自定义压缩包的名字 要压缩的文件
tar zcvf
解压缩
tar xf 压缩包的名字
解压缩 指定解压的目录
tar xf 压缩包的名字 -C 指定的目录
【19】.which、whereis、
which:只能找命令文件的所在
whereis:只能找命令文件的所在
- locate:它不是真的去硬盘上面给你一块一块空间的找,从数据库里寻找;速度快,但是有延迟性,适合找陈年旧账。
【20】.★★★★★find:从头找到尾(递归方式)【名称、类型、大小、等不同属性进行查找】
1.精确查找
2.实时查找
3.支持查找条件多
七大文件类型 其他的都是一样的 只有-变为f
find 【查找范围】 【查找条件表达式】 【处理动作】
【查找范围】:要写在查找条件的前面,如果不指定,默认找的是当前文件夹。
【查找条件表达式】:选项+表达式
【处理动作】:默认打印(显示)在屏幕上 删除找到的文件 或者 移动 或者 其他
选项:
-name 按名称查找文件 find /boot-name “vm*” 找到/boot文件夹下以vm为开头的文件
-type 按文件属性查找 find / -type f :(找普通文件 d目录 c:字符 b:块 硬盘 l:软链接 s:套接字 p:管道符)
-user 按文件的主人查找wenj find / -user zhangsan
-nouser 无主文件 没有主人的文件 用户被删除
-inum 根据iNode号去找文件 find / -inum 5555
-empty 查找空文件
-size 按照文件大小去查找文件
-mtime 按照时间去找文件 +mtime 3 大于三天 (find / -mtime+3 -size +1G -name “*log” -type f)
find 范围 选项+条件 处理动作
【21】.vi编辑器
1.vi介绍
作用:创建或修改文本文件,如果有这个文件使用 vi +文件名代表打开这个文件,如果没有这个文件代表创建此文件。
安装:linxu常用的文本编辑器,类unix操作系统的默认文本编辑器。操作系统默认安装
vim编辑器:是vi的加强版,最大的区别是vim可以显示颜色,但是最小化安装时不会自动安装
vi命令格式: vi [选项] 文件名
[选项] +number 代表加数字,如vi +10 代表打开文件光标直接在第10行,默认第一行
+/^内容h或者内容$ 代表打开以什么开头或以什么结尾,例如打开以root开头,
vi +/^root
2.vi三种模式
命令模式:默认模式,可以移动光标定位光标复制粘贴等
插入模式:命令模式按i(当前位置插入) o(在下一行插入) 会切入到输入模式,输入文字
末行模式:执行待定命令
3.命令模式
文件内跳转
★G 最后一行
★gg 第一行
★10 G 跳转到第十行 数字G 跳到数字行
行间跳转(一行的开头 一行的结尾)
0 跳到一行的开头
^ 跳到一行的开头
end 跳到一行的结尾
$ 跳到一行的结尾
词间跳转
w 下一个单词的开头
e 下一个单词的结尾
单个字符处理
★ x 删除当前光标处的字符
~ 大小写切换
其他操作
★ u 撤销
U 全撤
ctrl +r 重做
删除
★ dd 删除当前光标所在行
★ 10 dd 删除当前光标所在行开始的10行
粘贴
★ (小写)P 在光标行的下一行贴
★ (大写)p 在光标行的上一行贴
4.末行模式
w 保存
q 退出不保存
! 强制
set number 显示行号
set nonu 取消行号
set list 显示隐藏字符
末行模式中的查找替换:
通式:范围 s/你要找的内容/你要替换的内容/修饰符
(范围 s/// 范围 s@@@ 范围 s###)
例:% s/root/admin/g ##全文找root改成admin 所有的root
% s/root/admin/ ##全文找root改成admin 每行中的第一个
ps: 范围:
不写范围:只处理当前光标所在行
%:全文
10.20:10-20行
10:第十行
$:最后一行
$-1:倒数第二行
s:固定命令 search
你要找的内容:可以不确定 用正则表达式来表示
你要替换的内容:一定是确定的,不可以用通式表示
修饰符:
g:一行中全部都改
c:每次询问是否替换
i:忽略大小写