第三周:文本處理工具wc,cut,sort,uniq,tr,tee命令練習和用戶及組相關命令練習

1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可;

[root@app1 tmp]# who | cut -d" " -f1| uniq
root
dts
centos

2、取出最后登錄到當前系統的用戶的相關信息;

[root@app1 tmp]# last -1
centos   pts/5        10.88.103.46     Tue Sep 27 15:24   still logged in   

wtmp begins Sat Jun  4 13:22:15 2016

3、取出當前系統上被用戶當作其默認shell的最多的那個shell;

[root@app1 tmp]# cut -d: -f7 /etc/passwd | uniq -c | sort -n | tail -1
     25 /sbin/nologin

5、取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分;

[root@app1 tmp]# ifconfig eth0 | grep "inet addr" | cut -d":" -f2 |cut -d" " -f1
10.88.158.84
[root@app1 tmp]# ifconfig eth0 | grep "inet addr" | awk '{print $2}' | awk -F":" '{print $2}'
10.88.158.84

4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中;

[root@app1 tmp]#  sort -t: -k3 -n /etc/passwd | tail -10 | tr "a-z" "A-Z" | tee /tmp/maxusers.txt
[root@app1 tmp]#  sort -t: -k3 -n /etc/passwd | tail -10 > /tmp/maxusers.txt
[root@app1 tmp]# cat /tmp/maxusers.txt

6、列出/etc目錄下所有.conf結尾的文件的文件名,并將其名字轉換為大寫;

[root@app1 tmp]# ls /etc/*.conf | tr "a-z" "A-Z" | tee /tmp/etc.conf

7、顯示/var目錄下一級子目錄的總個數;

[root@app1 tmp]# ll /var/ | grep ^d | wc -l

8、取出/etc/group文件中第三個字段數值最小的10個組的名字;

[root@app1 tmp]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1

9、將/etc/fstab和/etc/issue文件的內容合并為同一個內容后保存至/tmp/etc.test文件中;

[root@app1 tmp]# cat /etc/fstab > /tmp/etc.test && cat /etc/issue >> /tmp/etc.test
[root@app1 tmp]# cat /etc/fstab /etc/issue > /tmp/etc.test

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:

    (1)、創建組distro,其GID為2016;

        [root@app1 tmp]# groupadd -g 2016 distro
        [root@app1 tmp]# grep distro /etc/group
        distro:x:2016:

    (2)、創建用戶mandriva,其ID號為100;基本組為distro;

        [root@app1 tmp]# useradd -u 100 -g distro mandriva
        [root@app1 tmp]# grep mandriva /etc/passwd
        mandriva:x:100:2016::/home/mandriva:/bin/bash

    (3)、創建按用戶mageia,其ID好為1100,家目錄為/home/linux;

        [root@app1 tmp]# useradd mageia -u 1100 -d /home/linux    
        [root@app1 tmp]# ls -ld /home/linux/
        drwx------ 4 mageia mageia 4096 Sep 27 16:35 /home/linux/
        [root@app1 tmp]# grep mageia /etc/passwd
        mageia:x:1100:1100::/home/linux:/bin/bash

    (4)、給用戶mageia添加密碼,密碼為mageedu;

        [root@app1 tmp]# echo "mageedu" | passwd mageia --stdin
        Changing password for user mageia.
        passwd: all authentication tokens updated successfully.

    (5)、刪除mandriva,但保留其家目錄;

        [root@app1 tmp]# userdel mandriva    
        [root@app1 tmp]# ls -ld /home/mandriva
        drwx------ 4 100 distro 4096 Sep 27 16:32 /home/mandriva

    (6)、創建用戶slakware,其ID號為2002,基本組為distro,附件組peguin;

        [root@app1 tmp]# useradd -u 2002 -g distro -G peguin slakware    
        [root@app1 tmp]# grep slakware /etc/passwd
        slakware:x:2002:2016::/home/slakware:/bin/bash
        [root@app1 tmp]# grep slakware /etc/shadow
        slakware:!!:17071:0:99999:7:::
        [root@app1 tmp]# grep slakware /etc/group
        peguin:x:505:gentoo,slakware

    (7)、修改slakware的默認shell為/bin/tcsh;

        [root@app1 tmp]# usermod -s /bin/tcsh slakware
        [root@app1 tmp]# grep slakware /etc/passwd
        slakware:x:2002:2016::/home/slakware:/bin/tcsh

    (8)、為用戶slakware新增附加組admins;

        [root@app1 tmp]# groupadd admins        
        [root@app1 tmp]# usermod -a -G admins slakware
        [root@app1 tmp]# grep slakware /etc/group
        peguin:x:505:gentoo,slakware
        admins:x:4005:slakware

    (9)、為slakware添加密碼,且要求密碼的最短使用期限為3天,最長為180天,警告為3天;

        [root@app1 tmp]# echo "dtsdts" |  passwd -n 3 -x 180 -w 3 --stdin slakware

    (10)、添加用戶openstack,其ID為3003,基本組為clouds,附加組為peguin和nova;

        [root@app1 tmp]# useradd -u 3003 -g clouds -G peguin,nova openstack        
        [root@app1 tmp]# grep openstack /etc/group
        peguin:x:505:gentoo,slakware,openstack
        nova:x:4007:openstack

    (11)、添加系統用戶mysql,要求其shell為/sbin/nologin;

        [root@app1 tmp]# useradd -r mysql -s /sbin/nologin

    (12)、使用echo命令,非交互式為openstack添加密碼。

        [root@app1 tmp]# echo "dtsdts" | passwd --stdin openstack        
        Changing password for user openstack.
        passwd: all authentication tokens updated successfully.
        [root@app1 tmp]#

原創文章,作者:dawning,如若轉載,請注明出處:http://www.www58058.com/49508

(0)
dawningdawning
上一篇 2016-09-27
下一篇 2016-09-27

相關推薦

  • chmod命令詳細用法

    指令名稱 : chmod 使用權限 : 所有使用者 使用方式 : chmod [-cfvR] [–help] [–version] mode file… 說明 : …

    Linux干貨 2016-10-17
  • 下載編譯安裝httpd 2.4最新版本

    關于這個問題分三步講:1.下載最新版本;2.編譯;3.安裝 一:下載httpd 2.4的最新版本:(這里以Centos 7為例,Centos 6里用的是2.2版本的) 下載的話如何找下載路徑—–>下載后是存在windows下,如何將其移進linux中  1.下載路徑: 當然我們現在只要是碰到不會或者不知道的東西,通常會…

    2017-08-26
  • nginx

    http http協議:web服務器(類似于httpd)、http reverse proxy(類似于httpd)、imap/pop3 reverse proxy NGINX is a free, open-source, high-performance HTTP server and reverse proxy, as well as an IMAP/P…

    Linux干貨 2017-06-25
  • Linux第四周總結

    1、復制/etc/skel目錄為/home/tuser1, 要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 2、編輯/etc/group文件,添加組hadoop。 3、手動編輯/etc/passwd文件新增一行,添加用戶hadoop, 其基本組ID為hadoop組的id號;其家目錄為/home/hadoop。 4、復制/etc/…

    2017-07-24
  • 網絡接口配置-bonding

    網絡接口配置-bonding ?Bonding 就是將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡。當然,直接給兩塊網卡設置同一IP地址是不可能的。通過bonding,虛擬一塊網卡對外提供連接,物理網卡的被修改為相同的MAC地址。 Bonding的工作模式 ?Mode 0 (balance-rr) 輪轉(Round-robin)策略:從頭…

    Linux干貨 2016-09-05
  • Linux用戶與組之權限管理

    權限(rwx、sst、umask) chown chmod ACL(見下篇) 試驗環境:CentOS 7.2 與CentOS 6.8,具體會在應用場景明確指出 權限 Linux系統對用戶與組的管理,其具體操作手段就是對于權限的分配,而常見的權限分配工具有 rwx, sst, umask, ACL. 跟用戶與組有uid和gid一樣,權限也有…

    Linux干貨 2016-08-07
欧美性久久久久