1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。
]# who | sort -nu | cut -d” ” -f1
2、取出最后登錄到當前系統的用戶的相關信息。
]# who | tail -1 | cut -d” ” -f1 | id
3、取出當前系統上被用戶當作其默認shell的最多的那個shell。
]# cat /etc/passwd | cut -d: -f7 | uniq -c | sort -n | tail -1 | awk ‘{print$2}’
4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中。
]# cat /etc/passwd | sort -t: -k3 -n | tail -10 | tr [a-z] [A-Z] >& /tmp/maxusers.txt
5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
]# ifconfig eth0 | grep “inet addr” | awk ‘{print$2}’ | cut -d: -f2
6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
#/bin/bash
#
for i in $(ls -d /etc/*.conf);do
basename $i | tr ‘a-z’ ‘A-Z’ &>> /tmp/etc.conf
done
7、顯示/var目錄下一級子目錄或文件的總個數。
]# ls -a /var | wc -l
8、取出/etc/group文件中第三個字段數值最小的10個組的名字。
]# cat /etc/group | sort -t: -k3 -n | head -10 | cut -d”:” -f1
9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中。
]# cat /etc/fstab /etc/issue &>> /tmp/etc.test
10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
useradd? 增加用用戶
用法:useradd [options] LOGIN
-d? 指定其用戶的家目錄,默認是home下以其用戶名命令的家目錄名;
-s? 指定其用戶的bash? 默認為當其shell
-g 指定用戶的屬組,不指為自身的屬組
-u 指定用戶的屬主
-M 不創建家目錄
-r 創建系統用戶 一般ID與小于1000
-c? 創建時給用戶添加備注信息
usermod?? 已有用戶的管理命令
userdel?? 刪除當前用戶
groupadd? 添加組
groupmod 組管理命令
groupdel? 刪除組
passwd? USERS 給用戶添加密碼
(1)、創建組distro,其GID為2016;
groupadd -g 2016 distro
(2)、創建用戶mandriva, 其ID號為1005;基本組為distro;
]# useradd -u1005 -gdistro mandriva
(3)、創建用戶mageia,其ID號為1100,家目錄為/home/linux;
]# useradd -d /home/linux -u 1100 mageia
(4)、給用戶mageia添加密碼,密碼為mageedu;
]# echo “mageedu” | passwd –stdin mageia
(5)、刪除mandriva,但保留其家目錄;
]# userdel mandriva
(6)、創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin;
]# useradd -u2002 -gdistro -Gpeguin slackware
(7)、修改slackware的默認shell為/bin/tcsh;
]# usermod -s /bin/tcsh slackware
(8)、為用戶slackware新增附加組admins;
]# usermod -G admins slackware
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90150
非常好,尤其是cut和awk的應用已經非常熟練了,再接再勵。