- linux 又一波命令来袭 由简入深,层层递进
- 1.tree 以树形结构显示目录及文件
- 2.cat ,head, tail,less ,more 查看文件内容五剑客 后面四个可查看日志,cat及之前的vi vim不可查看 否则会造成系统内存不足 核心命令
- 2.1cat 适用于查看普通文件,内容少,说白了就是小文件
- 2.2 head 显示文件的开头几行,默认显示前10行
- 2.3 tail 显示文件最后几行,默认显示文件最后十行 (与head 正好相反)
- 2.4 less 按页查看文件内容,到最后一行不退出
- 2.5 more 按页查看文件内容到最后一行,且会退出到命令行
- 3 wc 命令 统计行数
- 4 which 查询命令的绝对路径
- 5. sort与uniq 排序与去重命令 (关键命令)
- 5.1 sort 用于排序的命令
- 5.2 sort 命令进阶组合
- 5.3 sort案例进阶 对 第2列或第4列进行降排序
- 5.4 案例 sort终极挑战及问题解答
- 5.5 sort 用法进阶总结
- 5.6 作业有兴趣在评论写出
- 6.**uniq** **(**unique**)(去重并显示次数)合并文件中相邻的相同的行,同时可以显示次数**
- 6.1 注意 uniq 仅能去重相邻的且相同的字符串,所以需要sort配合
- 总结
格式 tree 目录 tree -F 目录 会在非目录文件后添加/ 自行尝试 [root@kmkk ~]# tree /etc /etc ├── abrt │ ├── abrt-action-save-package-data.conf │ ├── abrt.conf │ ├── gpg_keys.conf │ └── plugins │ ├── CCpp.conf │ ├── oops.conf │ ├── python.conf │ ├── vmcore.conf │ └── xorg.conf ├── adjtime ├── aliases ├── aliases.db ├── alternatives │ ├── ld -> /usr/bin/ld.bfd │ ├── libnssckbi.so.x86_64 -> /usr/lib64/pkcs11/p11-kit-trust.so │ ├── mta -> /usr/sbin/sendmail.postfix │ ├── mta-aliasesman -> /usr/share/man/man5/aliases.postfix.5.gz │ ├── mta-mailq -> /usr/bin/mailq.postfix │ ├── mta-mailqman -> /usr/share/man/man1/mailq.postfix.1.gz │ ├── mta-newaliases -> /usr/bin/newaliases.postfix │ ├── mta-newaliasesman -> /usr/share/man/man1/newaliases.postfix.1.gz │ ├── mta-pam -> /etc/pam.d/smtp.postfix │ ├── mta-rmail -> /usr/bin/rmail.postfix │ ├── mta-sendmail -> /usr/lib/sendmail.postfix │ ├── mta-sendmailman -> /usr/share/man/man1/sendmail.postfix.1.gz │ ├── ncman -> /usr/share/man/man1/ncat.1.gz │ └── nmap -> /usr/bin/ncat ├── anacrontab ├── asound.conf ├── audisp │ ├── audispd.conf │ └── plugins.d │ ├── af_unix.conf │ └── syslog.conf ├── audit │ ├── auditd.conf │ ├── audit.rules │ ├── audit-stop.rules │ └── rules.d │ └── audit.rules ├── bash_completion.d │ ├── git │ ├── iprutils │ ├── redefine_filedir │ └── trace-cmd.bash ├── bashrc ├── binfmt.d ├── centos-release ├── centos-release-upstream ├── chkconfig.d ├── cron.d │ ├── 0hourly │ └── sysstat ├── cron.daily │ ├── logrotate │ └── man-db.cron ├── cron.deny ├── cron.hourly │ └── 0anacron ├── cron.monthly ├── crontab ├── cron.weekly ├── crypttab ├── csh.cshrc ├── csh.login ├── dbus-1 │ ├── session.conf │ ├── session.d │ ├── system.conf │ └── system.d │ ├── com.redhat.tuned.conf │ ├── dbus-abrt.conf │ ├── FirewallD.conf │ ├── nm-dispatcher.conf │ ├── nm-ifcfg-rh.conf │ ├── org.freedesktop.hostname1.conf │ ├── org.freedesktop.import1.conf │ ├── org.freedesktop.locale1.conf │ ├── org.freedesktop.login1.conf │ ├── org.freedesktop.machine1.conf │ ├── org.freedesktop.NetworkManager.conf │ ├── org.freedesktop.PolicyKit1.conf │ ├── org.freedesktop.systemd1.conf │ ├── org.freedesktop.timedate1.conf │ ├── teamd.conf │ └── wpa_supplicant.conf2.cat ,head, tail,less ,more 查看文件内容五剑客 后面四个可查看日志,cat及之前的vi vim不可查看 否则会造成系统内存不足 核心命令 2.1cat 适用于查看普通文件,内容少,说白了就是小文件
基本格式 cat 文件名
涉及常用参数 -n cat -n 文件名 查看文件内容的同时显示行号
-A cat -A 文件名 查看文件的同时显示是否含有隐藏字符,如没有则以$结尾
#1
[root@kmkk ~]# cat /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
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
#2.
[root@kmkk ~]# cat -n /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10 operator:x:11:0:operator:/root:/sbin/nologin
11 games:x:12:100:games:/usr/games:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13 nobody:x:99:99:Nobody:/:/sbin/nologin
14 systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
15 dbus:x:81:81:System message bus:/:/sbin/nologin
16 polkitd:x:999:998:User for polkitd:/:/sbin/nologin
17 tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
18 abrt:x:173:173::/etc/abrt:/sbin/nologin
19 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
20 postfix:x:89:89::/var/spool/postfix:/sbin/nologin
21 ntp:x:38:38::/etc/ntp:/sbin/nologin
#3
[root@kmkk ~]# cat -A /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$
games:x:12:100:games:/usr/games:/sbin/nologin$
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin$
nobody:x:99:99:Nobody:/:/sbin/nologin$
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin$
dbus:x:81:81:System message bus:/:/sbin/nologin$
polkitd:x:999:998:User for polkitd:/:/sbin/nologin$
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin$
abrt:x:173:173::/etc/abrt:/sbin/nologin$
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin$
postfix:x:89:89::/var/spool/postfix:/sbin/nologin$
ntp:x:38:38::/etc/ntp:/sbin/nologin$
2.2 head 显示文件的开头几行,默认显示前10行
基本格式
head 文件名 显示文件的开头几行,默认显示前10行
参数运用 -n 默认显示前十行
-n数字 指定行数(指定显示文件多少行)如 -n5 显示前5行
亦可写成-5
#案例01 查看文件前10行
[root@kmkk~]# 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
#案例02 显示文件前5行
[root@kmkk ~]# head -n5 /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
[root@kmkk ~]# 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
2.3 tail 显示文件最后几行,默认显示文件最后十行 (与head 正好相反)
基本格式 tail 文件 显示文件最后几行,默认显示文件最后十行 tail -n数字 文件 显示文件最后(n后面数字)行 tail -f 文件 显示文件实时更新 从ctrl +c 退出 显示文件的实时更新。(未来查看日志必备) tailf #等于tail -f #案例01 显示文件最后10行 ; 显示文件最后5行 [root@kmkk ~]# tail -n5 /etc/passwd tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin abrt:x:173:173::/etc/abrt:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin lidao:x:1000:1000::/home/lidao:/bin/bash [root@kmkk ~]# tail -5 /etc/passwd tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin abrt:x:173:173::/etc/abrt:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin postfix:x:89:89::/var/spool/postfix:/sbin/nologin lidao:x:1000:1000::/home/lidao:/bin/bash2.4 less 按页查看文件内容,到最后一行不退出
基本用法 less 文件名 进入后可执行下面命令 * G到达最后一行。 * g到达文件第1行。 (gg vi/vim快捷键) * 向下翻页 空格 或 f或 ctrl +f * 下上翻页 b 或 ctrl + b * q退出2.5 more 按页查看文件内容到最后一行,且会退出到命令行
基本用法 more 文件名
3 wc 命令 统计行数基本用法 wc -l 文件名 统计文件行数,一共多少行 [root@kmkk ~]# wc -l /etc/passwd 21 /etc/passwd4 which 查询命令的绝对路径
基本用法 which 命令 [root@kmkk ~]# which ls alias ls='ls --color=auto' /usr/bin/ls [root@kmkk ~]# which rm alias rm='rm -i' /usr/bin/rm which 后可加多个命令 同时查看多个命令 [root@kmkk ~]# which tree ls rm alias ls='ls --color=auto' /usr/bin/ls alias rm='rm -i' /usr/bin/rm /usr/bin/tree5. sort与uniq 排序与去重命令 (关键命令) 5.1 sort 用于排序的命令
**选项格式** sort 文件 默认是按照字符顺序对比,从左到右一位一位对比 -n 文件 对数字排序进行升序排序(1.2.3..9) -rn 文件 逆序排序(9.8.7..1) -k数字 文件 指定某列 -k1 指定多列 -k1 -k2 -k1.1 根据第1列的第1个字符进行排序 -t'' ''-->单引号里面是指定什么为分隔符 指定分隔符 如单引号里为'.',就是以 点 . 作为分隔,形成一组一组,进行排列 ###环境准备 直接复制下面内容到命令行回车即可 cat >sort1.txt<5.2 sort 命令进阶组合 sort -nk 对文件中的某列进行降序排列
环境准备 将下方复制到命令行回车 cat >sort2.txt<5.3 sort案例进阶 对 第2列或第4列进行降排序 准备 cat >sort2.txt<5.4 案例 sort终极挑战及问题解答 环境准备 复制到命令行回车即可 cat >sort-ip.txt<5.5 sort 用法进阶总结 sort -rn(-n) -k数字 ,数字 -k数字,数字 (数字与数字间要有逗号)
则是指对文件某列到这一列结尾进行排序
1)如sort -rn -k1,1 -k2,2 就是对文件按照第一列到第一列末尾,第二列到第二列末尾进行排序,逗号‘,’后的数字代表某列结尾,第一列结尾就是1,第二列结尾就是2,以此类推
2)sort -rn(-n) -k1.1,1.3 -k3.1,3.2 就是对文件从第一列的第1个字符到第一列的第3个字符为止排序,同时也从第三列的第1个字符到第三列的第2个字符为止进行排序。(-k1.1,1.3中,-k1表示文件第一列 .1表示第一列的第一个字符 ,逗号1.3表示第一列的第3个字符,也就是从第一列的第一个字符到第一列的第三个字符为止进行排序)
3)而单独的-k 数字 没有逗号,没有几点几到几点几,则表示这一列到这行的最后作为一个整体进行排序
5.6 作业有兴趣在评论写出对/etc目录下面 文件、目录 大小排序 (取前10)
6.uniq (unique)(去重并显示次数)合并文件中相邻的相同的行,同时可以显示次数
提示
#1. 显示大小
#2. 排序
#3. 取前10个
#1. 显示大小 ls -l
#2. 排序 sort
#3. 取前10个 head* uniq 文件 直接去重但不显示次数 * uniq -c 文件 去重,并 显示 有多少个相同的数据 * # 环境准备 cat >uniq.txt<6.1 注意 uniq 仅能去重相邻的且相同的字符串,所以需要sort配合 # 环境准备 cat >uniq.txt<总结 自认为挺详细 ,有不懂的可以留言,多加练习,不要嫌麻烦,免费的就是最贵的!



