小白加薪升职记之正则表达式基础

正则表达式基础命令

1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。

cp -r /etc/skel/ /home/tuser1;chmod -R 700 /home/tuser1/

2、编辑/etc/group文件,添加组hadoop。

sed -i ‘$a\hadoop:x:2004:’ /etc/group

3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。

sed -i ‘$a\hadoop:x:2004:2004::/home/hadoop:/bin/bash’ /etc/passwd

4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。

cp -r /etc/skel/ /home/hadoop;chmod 700 /home/hadoop/

5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。

chown hadoop:hadoop /home/hadoop/

6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;

grep “^[sS].*” /proc/meminfo
sed -n ‘/^[sS].*/p’ /proc/meminfo
grep -i “^s.*” /proc/meminfo

7、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;

grep “/sbin/nologin$” /etc/passwd | awk -F’:’ ‘{print $1}’

8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;

sed -n ‘/\/bin\/bash/p’ /etc/passwd | cut -d’:’ -f1

9、找出/etc/passwd文件中的一位数或两位数;

grep “\<[0-9]\{1,2\}\>” /etc/passwd

10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;

grep “^[[:space:]]\+” /boot/grub2/grub.cfgcentos7中没有/boot/grub/grub.conf,而是/boot/grub2/grub.cfg

11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;

grep “^#[[:space:]]\+[^[:space:]]” /etc/rc.d/rc.local

12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;

netstat -tan | grep “LISTEN[[:space:]]*”

13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

useradd bash;useradd testbash;useradd basher;useradd nologin;
然后写了个循环如下:
[root@test 15:23:26 test]# more test.sh
#!/bin/bash
# function: Display username same as the login shell
# author: cool
# date: 2018年 06月 01日 星期五 15:23:04 CST
# version: 0.0.1
while read line;do
username=`echo $line | awk -F’:’ ‘{print $1}’`
shell=`echo $line | grep -E -o “[^/]+/?$” | cut -d’/’ -f1`
[ $username == $shell ] && echo $line
done < /etc/passwd

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99945

(1)
coolSircoolSir
上一篇 2018-06-01 05:25
下一篇 2018-06-01 15:47

相关推荐

  • Linux基础知识(2)

    N31
    第二周

    Linux笔记 2018-06-30
  • 运维自动化之ansible

    ansible的基本架构 ​ host inventory主机清单 ​ playbook相当于脚本, ​ modules模块 ansible工作原理 ​ 通过执行命令,或ansible playbook,cmdb ansible配置文件 ​ /etc/ansible/ansible.cfg主配置文件,配置ansible工作特性 ​ /etc/ansible/…

    Linux笔记 2018-06-03
  • 日志管理

    日志介绍 日志配置 日志管理 远程日志 基于MYSQL的日志

    Linux笔记 2018-06-25
  • 第二周笔记

    ### 4 月2日笔记 – #### IO重定向“`I:input指的是标准输入 描述符用0表示O:output指的是标准输入 描述符用1表示标准错误 描述符用2表示“`一般文件或者命令的标准输入是指的键盘,标准输出是值得终端窗口。我们用重定向来改变他们的方向大于号> 表示标准输出:把输出内容定向到一个文件中&#82…

    Linux笔记 2018-04-01
  • 第二周作业

    第二周作业
    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3、请使用命令行展开功能来完成以下练习:
    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │ └── grub
    ├── dev
    ├── etc
    │ ├── rc.d
    │ │ └── init.d
    │ └── sysconfig
    │ └── network-scripts
    ├── lib
    │ └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │ └── local
    │ ├── bin
    │ └── sbin
    └── var
    ├── lock
    ├── log
    └── run

    Linux笔记 2018-05-13