跟老刘学linux 学员:66 (群名)
# cd /root
# ls 看到文件和目录
# cd /home 切换
# ls 查看
# cd /var
# ls
# cd /root
# ls
# ls -a 所有文件(包含隐藏文件)
Linux系统中文件最前面以点号开头则为隐藏文件
# ls -l 详细信息模式(长格式,输出信息更丰富)
# ls -l initial-setup-ks.cfg
一个点号是当前目录,两个点号是上一个目录
# cd .
# cd ..
创建目录 # mkdir -p a/b/c/d/e
# ls
4. tree 以树状图的形式列出目录内容及结构
# tree a 查看目录树状图
5. find命令 全盘搜索
# find / -name fstab 以文件名称搜索 /代表根目录
读 写 执行
SUID SGID SBIT
4 2 1
# find / -perm - 4000 -print
-print = 打印 可省略
6. locate 按照名称快速搜索文件所对应的位置
# updatedb 生成数据库
# locate 根据数据库范围 通用文件。只搜索命令文件,linux系统中的一切都是文件,命令也是文件
# locate whereis 可以看到whereis命令的路径,速度快 但是不是全局搜索 不推荐
7. whereis 跟命令文件,只搜索跟命令相关的文件所对应的路径
whereis + 命令
如 # whereis ls
可以看到命令的路径
8. which 只搜索命令文件对应的路径
对比:
# whereis reboot
# which reboot
只搜索命令对应的路径
查看、编写、执行
# ls
文件后缀
.exe 可执行文件
.txt 文本
.jpg 图片
# cd /etc
黑底白字 = 一般文件 文本文件 配置文件
黑底蓝字 = 目录文件
如果是目录文件可以用cd 目录/切换进去
# file 文件名称
2.6 文本文件编辑命令
- cat 命令 (看小文件)
[扩展]如果目录下只有一个ana开头的文件,可以输入ana后按下tab键自动补齐
# cat anaconda-ks.cfg
cat 建议看比较小文件的内容 ,一般情况下看一页以内或几行内容的文件
- more 命令 (看大文件)
每按一次回车会往下走一行,按一下空格会翻页,左下角百分比会随之变化 ,适用于看比较大的文件
如果不知道文件大小,无法判断使用cat还是more时候,可以直接用more。
- head 只看文件的前N行
# head -n 15 anaconda-ks.cfg 只看ana文件前15行
- tail 只看文件的后N行,以及持续刷新的效果
# tail -n 10 anaconda-ks.cfg
tail -f 持续刷新
如 # tail -f /var/log/ messages
图
新建窗口,启动sshd文件,可以看到实时刷新
[扩展] 使用管道符(任意门)查询前55行到后20行,文件名ana.cfg
# head -n 55 ana.cfg | tai -n 20
5. tr 替换文本内容中的字符
# cat anaconda-ks.cfg | tr [a-z] [A-Z]
图
6. wc 统计指定文本文件的行数、字数或字节数
# wc -l 文件名 统计行数
例 # wc -l anaconda-ks.cfg 回复 44行
# wc -c 文件名 统计字(字节)数
例 # wc -c anaconda-ks.cfg 回复1395
# wc -w 文件名 统计单词数
例 # wc -w anaconda-ks.cfg 回复122
图
# ls -l anaconda-ks.cfg 查看文件详细信息
文件最后一次修改时间
[扩展] 在linux系统中有三个时间
⑴ MTINE = modify time 修改时间 (修改文件内容的时间)
⑵ CTIME = change time 更改时间 (修改文件属性信息的时间)
⑶ ATIME = access time 访问时间 (最后一次查看文件内容的时间)
查看文件对应的三个时间 # stat 文件名,如 # stat anaconda-ks.cfg
9. grep 按行搜索(提取)文本内容
例:# cat anaconda-ks.cfg 读取文件,使用grep搜索包含关键词“oo”。
# grep oo anaconda-ks.cfg
加-n查看关键词对应行数 # grep -n oo anaconda-ks.cfg
10. cut 按“列”提取文本内容
例:# cat /etc/passwd 读取文件,可以看到每项中用冒号“:”做间隔比较多,
# cut -d : -f 1 /etc/passwd | wc -l 查看有多少用户
# cut -d : -f 1 /etc/passwd 提取系统中所有用户名称
创建文件:
# vim a.txt
# vim b.txt
# cat a.txt
# cat b.txt
11. diff 用于比较多个文件之间内容的差异
# diff --brief a.txt b.txt
# diff --c a.txt b.txt 查看具体某行不同
12. uniq命令用于去除文本中连续的重复行
例:新建 # vim haha.txt
welcome to linuxaaa.com
welcome to linuxaaa.com
welcome to linuxaaa.com
red hat certified
freelinux lessons
# cat haha.txt
# uniq haha.txt 去重合并(信息必须相邻)
13. sort对文本内容排序
新建 # vim a.txt 内容:
banana
pera
apple
orange
raspaberry
文件排序 # sort a.txt 按照开头字母字符a-z排序
新建 # vim b.txt ,内容:
45
12
3
98
82
67
24
56
9
排序 # sort b.txt ,只按照第一位排序
需要使用-n ,# sort -n b.txt
多行、列,根据第三行 、 以数字排序 # sort -n -t :-k 3 /etc/passwd
sort 文件 | uniq = 即排序 也查重
# ls
# ls | wc -l
# cat anaconda-ks.cfg | wc -w 管道符后不用再加对象
# tr [a-z] [A-Z] anaconda-ks.cfg
2.7 文件目录管理命令
1. touch 创建空白文件(一般文件=文本文件=配置文件)或修改/设置文件的时间(在日志中没有记录)
可以用 # file /dev/sdb 查看文件类型
用法: # touch 文件名
例: # vim abc 创建文件 内容 :
aaaaaaaaaaaa
bbbbbbbbbb
# cat abc 查看内容
# ls -l abc 查看属性
# touch -d “20:21” abc 格式:touch -d “时间” 文件名
# cat abc
2. mkdir 创建空白的目录文件
# mkdir xiaohua
# ls 查看
# cd xiaohua 切换目录
使用递归操作“-p”一次性新建五个目录 # mkdir -p a/b/c/d/e/f
# tree a/
# cd a/b/c/d/e/f
# pwd
# cd ~
3. cp 复制文件或目录
用法: # cp 文件名 文件名
# cat 文件名 查看
复制目录: # cp -r 目标目录 新目录名
# cp -r Downloads/ heihei
[扩充] 查看一下命令 # man 命令,如# man cp
4. mv 剪切(重命名)文件
格式: # mv 原文件 目标文件
# mv Desktop xixi
# ls 可以看到Desktop已变成xixi
5. rm 删除文件或目录
格式: # rm haha
输入y 确认
使用-f批量删除文件并且不输入y二次确认, # rm -f anaconda-ks.cfg
强制删除 或 删除目录, 格式: # rm -rf 目录名
总结:
rm -f 文件
rm -rf 目录
rm -rf /* 删除所有并且不可恢复!
6. dd 复制文件
if = input file
of = output file
count 每次取的个数(次数)
bs 每次复制时块的大小
例: # dd if=anaconda-ks.cfg of=lwehne bs=100 count=1
# cat lwehne 查看
# dd if=/dev/sda of=haha count=1 bs=512 备份分区表
# dd if=/dev/zero of=/root/haha/ bs=500M count=1 测试硬盘读取速度
7. file 查看文件的类型
黑底白字 → 一般文件
黑底蓝字 → 目标文件
格式: # file 文件名
8. tar 对文件进行打包压缩或解压
在Windows系统中,压缩文件一般为.rar .zip格式,
在liunx系统中,普遍为.tar.gz .tar .7z .tar.bz2格式。
格式: # tar czvf或cjvf 压缩包 目录
c代表打包,把多个文件归档
z 代表压缩,= gzip,格式为tar.gz
j 同压缩,格式不同, bzip2 = .tat.bz2
v 显示过程
f 压缩包的名称
如:# tar czvf backup.tar.gz /etc
图
另外命令中.gz可省略,但是不严谨,不建议 # tar czvf backup.tar /etc 这样。
查看 # file backup.tar.gz
图
# ls
图
解压: 如果是.tar.gz和.tat.bz2格式 可以直接用j解压, 格式: # tar xjvf 压缩包
# tar xvf backup.tar.gz 可以省略z或j
图
另外附图



