第三周

作業

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

#!/bin/bash
# Version:
# Description:
# Author: jerry<jerry@whitehouse>
# Date: 2017/12/15
who | cut -d' ' -f1 | sort | uniq

 

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

#!/bin/bash
#
last -a -i | head -n 1
-i: 主機名不反解,以IP顯示;
-a: 將主機名顯示在最后一行;

 

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

#!/bin/bash
#
cut -d: -f7 /etc/passwd | sort | uniq -c | sort -t' ' -k 1 -r -n | head -n 1 || awk -F: '{array[$NF]++} END {for (i in array) {print i,array[i]}}' /etc/passwd | sort -t' ' -k2 -r | head -n 1

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/passwd | tail -n 10 | tr [a-z] [A-Z] | tee /tmp/maxusers.txt

 

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

#!/bin/bash
#
ifconfig | egrep -o '(\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>\.?){4}'

 

6、列出/etc目錄下所有以.conf結尾的文件的文件名,并將其名字轉換為大寫后保存至/tmp/etc.conf文件中。

#!/bin/bash
#
ls -d /etc/*.conf | xargs -I {} basename {} | tr 'a-z' 'A-Z' > /tmp/etc.conf

 

7、顯示/var目錄下一級子目錄或文件的總個數。

#!/bin/bash
#
ls /var | wc -l

 

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

#!/bin/bash
#
sort -t':' -k3 -n /etc/group | head | grep -o '^[^:]\+'

 

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

#!/bin/bash
#
cat /etc/fstab /etc/issue | tee /tmp/etc.test

 

10、請總結描述用戶和組管理類命令的使用方法并完成以下練習:
組管理:groupadd、groupmod、groupdel
用戶管理:useradd、usermod、userdel、passwd、gpasswd、newgrp、change、chsh
其它:id、su、finger、which、where、w、who

(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;

 # groupadd peguin
 # useradd -u 2002 -g distro -G peguin slackware

 

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

 # usermod -s /bin/tcsh slackware

 

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

 # groupadd admins
 # usermod -a -G admins slackware

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90124

(2)
逆神陽逆神陽
上一篇 2017-12-15 20:57
下一篇 2017-12-16 14:22

相關推薦

  • 鏈接分析算法之:主題敏感PageRank

      前面的討論提到。PageRank忽略了主題相關性,導致結果的相關性和主題性降低,對于不同的用戶,甚至有很大的差別。例如,當搜索“蘋果”時,一個數碼愛好者可能是想要看 iphone 的信息,一個果農可能是想看蘋果的價格走勢和種植技巧,而一個小朋友可能在找蘋果的簡筆畫。理想情況下,應該為每個用戶維護一套專用向量,但面對海量用戶這種方法顯然不可行。所…

    Linux干貨 2016-02-17
  • Linux基礎知識(三)-用戶管理組管理,正則grep,文本處理

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,只顯示一次即可。 2、取出最后登錄到當前系統的用戶的相關信息。 3、取出當前系統上被用戶當作其默認shell的最多的那個shell。 4、將/etc/passwd中的第三個字段數值最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中 5、取出當前主機的IP…

    Linux干貨 2016-10-09
  • 軟鏈接和硬鏈接的區別

          什么是鏈接文件? 使用windows的朋友們應該會經常接觸到快捷方式吧!它也就是能讓我們快速的打開一個目標應用程序,文件,或者文件夾來使我們的操作更加快捷。那么下面我們就來簡單聊聊linux上的“鏈接文件”吧!            &n…

    Linux干貨 2016-10-19
  • 配置使用基于mysql存儲rsyslog日志信息

    配置使用基于mysql存儲rsyslog日志信息   日志對于我們來說,肯定不會陌生。每個系統應用,只要有人訪問,每時每刻都會產生大量的日志,用來記錄服務器應用的運行信息。以便于我們在服務有異常時進行查看,或是從日志記錄中提取出應用系統的運行信息。某些電商Web網站甚至會利用日志記錄去對用戶的購買行為作分析,以便更好的服務于客戶。 &nb…

    Linux干貨 2016-09-05
  • 基礎腳本編程練習題

        Shell腳本其實就是以一系列命令組合起來的文本文件,這些命令組合起來完成一個或者一項功能。因為Shell似乎是各UNIX系統之間通用的功能,并且經過POSIX(表示可移植操作系統接口Portable Operating System Interface of UNIX,縮寫為 POSIX)的標準化。因此,Sh…

    2017-08-05
  • Centos7 服務器部署ssh證書授權登錄

    在當前服務器生成密鑰對 ssh-keygen –t rsa –P ” ssh-keygen –t rsa –P ''[root@localhost ~]# ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key …

    Linux干貨 2016-12-05

評論列表(1條)

  • 馬哥教育
    馬哥教育 2018-01-07 18:09

    內容上基本上沒什么問題~文章中能體現自己的想法會更好~

欧美性久久久久