From c6677ef1a9a6ab9d8b879cc3526436485dad7cb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E7=8E=AE=E9=94=8B?= <295357613@qq.com> Date: Tue, 4 Jun 2024 12:24:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20240603 awk.md" | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 "36\351\203\221\347\216\256\351\224\213/20240603 awk.md" diff --git "a/36\351\203\221\347\216\256\351\224\213/20240603 awk.md" "b/36\351\203\221\347\216\256\351\224\213/20240603 awk.md" new file mode 100644 index 0000000..0d63f50 --- /dev/null +++ "b/36\351\203\221\347\216\256\351\224\213/20240603 awk.md" @@ -0,0 +1,49 @@ +# 作业 + +1. 只显示/etc/passwd的账户 + + ```dart + awk -F: '{print $1}' /etc/passwd + ``` + +2. 只显示/etc/passwd的账户和对应的shell,并在第一行上添加列名用户制表符shell,最后一行添加---------------- + + ```dart + awk -F: 'BEGIN {print "用户名\tshell"} {print $1,$NF} END {print "----------------"}' /etc/passwd + ``` + +3. 搜索/etc/passwd有关键字root的所有行 + + ```dart + awk -F '/root/ {print}' /etc/passwd + ``` + +4. 统计/etc/passwd文件中,每行的行号,每列的列数,对应的完整行内容以制表符分隔 + + ```dart + awk -F '{print NR,NF,$0}' /etc/passwd + ``` + +5. 输出/etc/passwd文件中以nologin结尾的行 + + ```dart + awk -F: '$NF~/nologin/ {print $1,$NF}' /etc/passwd + ``` + +6. 输出/etc/passwd文件中uid字段小于100的行 + + ```dart + awk -F: '$3<100 {print $0}' /etc/passwd + ``` + +7. /etc/passwd文件中gid字段大于200的,输出该行第一、第四字段,第一,第四字段并以制表符分隔 + + ```dart + awk -F: '$4>200 {OFS="\t";print $1,$4}' /etc/passwd + ``` + +8. 输出/etc/passwd文件中uid字段大于等于100的行 + + ```dart + awk -F: '$3>=100 {print $0}' /etc/passwd + ``` \ No newline at end of file -- Gitee