~~
1;列出當前系統上所有已經登錄的用戶的用戶名,注意:同一用戶登錄多次,則只顯示 一次即可。
-
# who | cut -d" " -f 1 | sort -u
2;取出最后登錄到當前系統的用戶的相關信息
-
# id $(who | tail -1 |cut -d" " -f 1)
-
# last | head -1
3;取出當前系統上被用戶當作其默認shell的最多的那個shell。
-
# cat /etc/passwd | cut -d":" -f 7 | sort | uniq -c | sort -n | tail -1
-
# cut -d":" -f 7 /etc/passwd | sort | uniq -c | sort -n | tail -1
4;將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmpmaxuser.txt文件中。
-
# sort -n -t: -k /etc/passwd | tail -10 | tr 'a-z' 'A-Z' > /tmpmaxuser.txt
5;取出當前主機的ip地址,提示:對ifconfig命令的結果進行切分。
-
# ifconfig | head -2 | tail -1 | cut -d " " -f 10
6;列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。
-
# ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf
7;顯示/var目錄下一級子目錄或文件的總個數。
-
# ls /var | wc -l
8;取出/etc/group文件中第三個字段數值最小的10個組的名字。
-
# sort -n -t: -k 3 /etc/group | tail -10 | cut -d ":" -f 1
9;將/etc/fstab和/etc/issue文件的內容全并為同一內容后保存至/tmp/etc.test文件中。
-
# cat /etc/{fstab,issue} >> /tmp/etc.test
10;請總結描述用戶和組管理類命令的使用方法并完成以下練習:
1> 創建組distro, 其GID為2016; # groupadd -g 2016 distro 2> 創建用戶mandriva, 其ID為1005,基本組為distro; # useradd -u 1005 -g distro mandriva 3> 創建用戶mageia, 其ID為1100,家目錄為/home/linux; # useradd -u 1100 -d /home/linux mageia 4> 給用戶mageia添加密碼,密碼為mageedu; # echo mageedu | passwd --stdin mageia 5> 刪除mandriva, 但保留其家目錄; # userdel mandriva 6> 創建用戶slackware, 其ID為2002,其本組為distro, 附加組peguin; # useradd -u 2002 -g distro -G peguin slackware 7> 修改slackware的默認shell為/bin/tcsh; # usermod -s /bin/tcsh slackware 8> 為用戶slackware 新增附加組admins; # usermod -G admins slackware 9> 為slackware添加密碼,且要求密碼最短使用期限為3天,最長為180天,警告為3天; # passwd -x 180 -n 3 -w 3 slackware 10> 添加用戶openstack, 其ID為3003,基本組為clouds, 附加組為peguin和nova; # useradd openstack -u 3003 -g clouds -G peguin,nova 11> 添加系統用戶mysql,要求其shell為/sbin/nologin; # useradd mysql -s /sbin/nologin 12> 使用echo 命令,非交互式為openstack 添加密碼; # echo "openstack" | passwd --stdin openstackp
命令詳解
cut ,sort ,head ,tail ,uniq
cut
-
-d –delimiter=DELIM 指定分隔符
-
-f –fields=LIST 指定字段 + # 單個字段 + #,# 離散字段 + #-# 連續字段 ######sort
-
-n –mumeric-sort 按數字大小排序
-
-t –field-separator=SEP 指定分隔符
-
-k –key==KEYDEF 用于排序比較的字段
-
-f –ignore-case 忽略字符大小寫
-
-u –unique 重復的行只保留一行; 重復行:連續且相同的行 ######head
-
-# 指定輸出前行;默認輸出10行 tail
-
-# 指定輸出后行,默認輸出10行
-
-f 實時顯示指定文本末行
uniq 報告可移除重復的行
-
uniq [OPTION]… [INPUT [OUTPUT]]
-
-c –count 顯示每行的重復次數
-
-u –unique 僅顯示未曾重復過的行
-
-d –repeated 僅顯示重復過的行
useradd ,usermod ,passwd
useradd
-
useradd -D 顯示創建用戶的默認配置
-
useradd -D [options] 修改默認選項的值
-
useradd [options] LOGIN
-
-g –gid 基本組
-
-G –groups 附加組
-
-p –password 設置密碼
-
-r –system create a system account.創建系統用戶
-
-u –uid UID號
-
-s –shell 用戶登錄shell
-
-d –home-dir 指定用戶家目錄路徑
-
-m –create-home 創建家用戶目錄
-
-M –no-create-home 不創建家用戶目錄
-
-c –command 注釋信息
usermod
-
-u –uid UID號
-
-g –gid 基本組
-
-G –groups 附加組
-
-a –append 與-G一起使用,用于為用戶追加新的附加組
-
-c –command 修改注釋信息
-
-d –home-dir 修改用戶家目錄;用戶原來的文件不會被移除
-
-m –move-home 只能與-d一起使用,用于將原來的家目錄移動至新目錄
-
-l –login 修改用戶名
-
-s –shell 修改用戶的默認shell
-
-L –lock 鎖定用戶密碼;即在用戶原來的密碼字符串之前添加一個"!"
-
-U –unlock 解鎖用戶密碼
userdel
-
-r –remove-home 刪除用戶時并刪除家目錄
passwd
-
passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
-
-l –lock 鎖定用戶
-
-u –unlock 解鎖用戶
-
-f –force
-
-e –exprie 用戶下次登錄時更改密碼
-
-d –delete 刪除用戶密碼
-
-n –ninmun DAYS 最小使用日期
-
-x –maximun DAYS 最大使用日期
-
-w –warning DAYS 警告日期
-
-i –inactive DAYS 失效日期
-
-S –status 顯示用戶密碼狀態
-
–stdin 非交互式管道設置密碼
echo "abcdefg" | passwd --stdin root
原創文章,作者:c_c,如若轉載,請注明出處:http://www.www58058.com/65645