1、 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。
cp –r /etc/skel /home/tuser1
chmod –R 700 /home/tuser1
2、 编辑/etc/group文件,添加组hadoop。
group文件的内容格式:
echo “hadoop:x:2333:”
>> /etc/group
3、 手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。
/etc/passwd文件格式:
echo “Hadoop:x:3222:2333::/home/Hadoop:/bin/bash”
>>/etc/passwd
4、 复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。
5、 修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。
Chown –R Hadoop:hadoop /home/hadoop
6、 显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;
关于正则表达式的一些知识点:
grep [OPTIONS] PATTERN [FILE…]
作用:过滤文本,匹配想要搜索的内容
常用选项:
-i:忽略大小写
-o:仅显示字符串
-v:显示不能被匹配的行
-E:支持扩展正则表达式
-A#:后几行
-B#:前几行
-C#:上下几行
元字符:
. 任意字符
[] 范围内的字符
[^] 范围外字符
位置锚定:
^:行首锚定;用于模式的最左侧;
$:行尾锚定;用于模式的最右侧;
^PATTERN$:用于PATTERN来匹配整行;
^$:空白行;
^[[:space:]]*$:空行或包含空白字符的行
单词:非特殊字符组成的连续字符(字符串)都称为单词;
\< 或 \b:词首锚定,用于单词模式的左侧;
\> 或 \b:词尾锚定,用于单词模式的右侧;
\<PATTERN\>:匹配完整单词;
本题解答:
grep –i “^s” /proc/meminfo
grep -i “^[sS]” /proc/meminfo
7、 显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;
grep –v “/sbin/nologin\b” /etc/passwd | cut -d:
-f1
一开始我使用的是grep “\</sbin/nologin>\” /etc/passwd,但是没有结果输出,原因是/etc/passwd文件下的每一行都是由非特殊字符组成的,每一行都是单词
8、 显示/etc/passwd文件中其默认shell为/bin/bash的用户;
grep “/bin/bash” /etc/passwd | cut -d: -f1
9、 找出/etc/passwd文件中的一位数或两位数;
grep -E “\<[0-9]{1,2}\>” /etc/passwd
10、 显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
grep -E “^[[:space:]]+” /boot/grub/grub.conf
11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;
grep -E “^#[[:space:]]+[^[:space:]]”
/etc/rc.d/rc.sysinit
12、 打出netstat -tan命令执行结果中以‘LISTEN’,后跟空白字符结尾的行;
13、添加用户bash, testbash,
basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;
grep -E “^([a-z]{1,}):.*\1$”
/etc/passwd
原创文章,作者:EUSCE,如若转载,请注明出处:http://www.178linux.com/70915
评论列表(1条)
题目都已经完成了,能再扩展一下会更好点~~继续加油!