目录
一.Linux目录结构
- 所有分区,目录,文件等的位置起点
- 整个树形目录结构中,使用独立的一个“/”表示
- 常见的子目录
/root | 管理员的家目录(宿主目录) |
/home | 普通用户的家目录 |
/bin | 所有用户的命令文件目录 |
/sbin | 管理员命令文件目录 |
/boot | 启动分区 |
/usr | 应用程序目录 |
/etc | 配置文件目录 |
/var | 可变长文件目录(日志文件) |
/dev | 设备文件目录(磁盘,光驱等) |
/tmp | 临时文件 |
/proc | 硬件信息(cpu,内存) |
/lib | 服务管理文件 |
/mnt | 空目录文件(可用来挂载) |
/opt | 空目录 |
- 查看根目录文件
[root@skt ~]# ls /
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
[root@skt ~]#
二.查看文件内容
- cat命令·,显示并且连接文件的内容(小型文件)
- cat命令在实际中更多的用来查看文件内容
- cat命令使用格式:cat 【选项】 文件名...
- 实例(查看文件时最后不需要加/)
[root@skt opt]# ls
abc rh share test zhansan.txt
[root@skt opt]# ls abc
r1.txt r2.txt r3.txt r4.txt
[root@skt opt]# cat abc/r1.txt/
cat: abc/r1.txt/: 不是目录
[root@skt opt]# cat abc/r1.txt
hello
[root@skt opt]#
- more命令,全屏方式分页显示文件内容
- more命令使用格式:more 【选项】文件名...
- 操作方法:按Enter键乡下逐行滚动;按空格键向下翻一屏;按q键退出
- 用该命令查看文件退出后,不能再返回界面
- 实例
[root@skt opt]# more abc/r1.txt
hello world!
I have a apple!
hello
hello
I have a pen!
hello
hello
[root@skt opt]#
- less命令,与more命令相似,但是扩展功能更多(适合在命令模式下查看大型文件)
- less命令使用格式:less 【选项】文件名...
- 操作方法:Page Up向上翻页,Page Down向下翻页;按/键查找内容,“n”下一个内容,“N”上一个内容;q退出
- 实例
[root@skt ~]# less /opt/abc/r1.txt
hello world!
I have a apple!
hello
hello
I have a pen!
hello
hello
(END)
- head命令,查看文件开头一部分的内容(默认为前10行)
- head -n 文件名...(n代表行数)
- 实例
[root@skt ~]# head /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
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
- tail命令,查看文件结尾的少部分内容(默认为后10行)
- tail -n 文件名...
- tali -f 文件名...,跟踪文件尾部内容的动态更新
- 实例
[root@skt ~]# tail /etc/passwd
setroubleshoot:x:993:988::/var/lib/setroubleshoot:/sbin/nologin
sssd:x:992:987:User for sssd:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:991:986::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/home/lisi:/bin/bash
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash
[root@skt ~]# tail -2 /etc/passwd
lisi:x:1001:1001::/home/lisi:/bin/bash
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash
三.统计文件内容---wc命令
- wc命令,用来统计文件中的单词数量等信息
- 使用格式:wc 【选项】... 目标文件....
- wc -l 目标文件 ,统计文件的行数
- wc -w 目标文件,统计单词个数
- wc -c 目标文件 ,统计字节数
- 实例
[root@skt ~]# wc /etc/passwd
42 82 2147 /etc/passwd
[root@skt ~]# wc -c /etc/passwd
2147 /etc/passwd
[root@skt ~]# wc -l /etc/passwd
42 /etc/passwd
[root@skt ~]# wc -w /etc/passwd
82 /etc/passwd
[root@skt ~]#
四.检索和过滤文件内容---grep命令
- 在文件中查找并显示包含指定字符串的行
- 可以指定关键字符串作为查找条件,也可以使用复杂的条件表达式(^word,表示以word开头,word$,表示以word结尾,^$表示空行)
- grep的使用格式:grep 【选项】…查找条件 目标文件
- grep -i,查找时忽略大小写
- grep -v,反转查找,输出与查找条件不相符的行
- 实例
[root@skt ~]# grep hello /opt/abc/r1.txt
hello world!
hello
hello
hello
hello
[root@skt ~]# grep -i i /opt/abc/r1.txt
I have a apple!
I have a pen!
[root@skt ~]# grep -v "^h" /opt/abc/r1.txt
I have a apple!
I have a pen!
五.压缩和解压
- gzip命令,bzip2命令,都是用来制作压缩文件、解开压缩文件
- gzip -9 文件名,bzip2 -9 文件名 ,制作压缩文件(相对来说bzip2的压缩效率要高一些)
- gzip -d .gz格式的压缩文件,bzip2 -d .bz2格式的压缩文件,解开压缩文件
- 实例(使用这两个工具压缩和解压之后,源文件不会保存)
[root@skt abc]# cat r1.txt
hello world!
I have a apple!
hello
hello
I have a pen!
hello
hello
[root@skt abc]# gzip -9 r1.txt
[root@skt abc]# ls
r1.txt.gz r2.txt r3.txt r4.txt
[root@skt abc]# bzip2 -9 r2.txt
[root@skt abc]# ls
r1.txt.gz r2.txt.bz2 r3.txt r4.txt
[root@skt abc]# gzip -d r1.txt.gz
[root@skt abc]# ls
r1.txt r2.txt.bz2 r3.txt r4.txt
[root@skt abc]# bzip2 -d r2.txt.bz2
[root@skt abc]# ls
r1.txt r2.txt r3.txt r4.txt
[root@skt abc]#
- tar命令,用来制作归档文件、释放归档文件
- tar命令使用格式:压缩文件:tar 【选项】目标文件名 源文件名,压缩文件:tar 【选项】 解压文件
- 常用命令选项含义
tar -c | 创建 .tar格式的文件 |
tar -C | 解压时指定释放的目标文件夹 |
tar -f | 表示执行文件 |
tar -j | 调用bzip2程序进行压缩或解压 |
tar -p | 打包时保留文件及目录的权限 |
tar -P | 打包时保留文件及目录的绝对路径 |
tar -t | 列表查看包内的文件 |
tar -v | 输出详细信息 |
tar -x | 解开 .tar格式的包文件 |
tar -z | 调用gzip程序进行压缩或解压 |
- 实例(使用tar工具时保留源文件)
[root@skt abc]# tar cfvz r2.txt.tar.gz r2.txt
r2.txt
[root@skt abc]# ls
r1.txt r2.txt r2.txt.tar.gz r3.txt r4.txt
[root@skt abc]# tar cfvj r1.tar.bz2 r1.txt
r1.txt
[root@skt abc]# ls
r1.tar.bz2 r1.txt r2.txt r2.txt.tar.gz r3.txt r4.txt
[root@skt abc]# tar fvxz r2.txt.tar.gz
r2.txt
[root@skt abc]# ls
r1.tar.bz2 r1.txt r2.txt r2.txt.tar.gz r3.txt r4.txt
[root@skt abc]# tar fvxj r1.tar.bz2
r1.txt
[root@skt abc]# ls
r1.tar.bz2 r1.txt r2.txt r2.txt.tar.gz r3.txt r4.txt
[root@skt abc]#
- 释放解压文件到/home/中
[root@skt abc]# ls
r1.tar.bz2 r1.txt r2.txt r2.txt.tar.gz r3.txt r3.txt.tar.gz r4.txt
[root@skt abc]# cd /home/
[root@skt home]# ls
lisi zhangsan
[root@skt home]# cd -
/opt/abc
[root@skt abc]# tar fvxz r3.txt.tar.gz -C /home/
r3.txt
[root@skt abc]# ls
r1.tar.bz2 r1.txt r2.txt r2.txt.tar.gz r3.txt r3.txt.tar.gz r4.txt
[root@skt abc]# cd /home/
[root@skt home]# ls
lisi r3.txt zhangsan
[root@skt home]#