马哥教育网络班N22期+第五周课程练习

1、显示当前系统上root、fedora或user1用户的默认shell;

~]# grep -E "^(root|user1|fedora)" /etc/passwd | awk -F: '{ print $1 $7 }'

root/bin/bash

user1/bin/bash

fedora/bin/bash

2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello()

~]# grep "\<[[:alpha:]]\+()" /etc/rc.d/init.d/functions 

checkpid() {

daemon() {

killproc() {

pidfileofproc() {

pidofproc() {

status() {

success() {

failure() {

passed() {

warning() {

action() {

strstr() {

confirm() {

3、使用echo命令输出一个绝对路径,使用grep取出其基名;

~]#  echo "/etc/rc.d/init.d" | grep -E -o "[^/]+$"

init.d

 扩展:取出其路径名

~]# echo /etc/udev/rules.d/ |grep -o ".*v/"

/etc/udev/

4、找出ifconfig命令结果中的1-255之间数字;

~]# ifconfig |grep -o "[1-9]\|[1-9][0-9]\|1[0-9][0-9]\|2[0-5][0-5]"

5、挑战题:写一个模式,能匹配合理的IP地址;

~]# ifconfig | grep -E -o "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"

172.17.42.1

0.0.0.0

255.255.0.0

10.20.0.2

10.20.0.255

255.255.255.0

127.0.0.1

255.0.0.0

6、挑战题:写一个模式,能匹配出所有的邮件地址;

egrep  "^[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+$"

7、查找/var目录下属主为root,且属组为mail的所有文件或目录;

~]# find /var/ -user root -group mail -ls

1704847    4 drwxrwxr-x   2 root     mail         4096 9月 28 05:35 /var/spool/mail

1706058    4 -rw——-   1 root     mail         2569 9月 28 05:20 /var/spool/mail/root

8、查找当前系统上没有属主或属组的文件;      

~]# find / -nouser -o -nogroup -ls

进一步:查找当前系统上没有属主或属组,且最近3天内曾被访问过的文件或目录;

~]# find / -nouser -a -nogroup -a -atime 3 -ls

9、查找/etc目录下所有用户都有写权限的文件;

~]# find /etc/ -perm /222 -type f -ls

10、查找/etc目录下大于1M,且类型为普通文件的所有文件;

~]# find /etc/ -size +1M -type f |xargs ls -lh

11、查找/etc/init.d/目录下,所有用户都有执行权限,且其它用户有写权限的文件;

~]# find /etc/init.d/ -perm /113 -type f -ls

12、查找/usr目录下不属于root、bin或hadoop的文件;

~]# find /usr/ -not -user root -a -not -user bin -a -not -user hadoop -ls

13、查找/etc/目录下至少有一类用户没有写权限的文件;

~]# find /etc/ -not -perm -111 -type f -ls

14、查找/etc目录下最近一周内其内容被修改过,且不属于root或hadoop的文件;

~]# find /etc/ -mtime -7 -not -user root -a -not -user hadoop

原创文章,作者:N22-昆山-Dexter_Wang,如若转载,请注明出处:http://www.178linux.com/51078

(0)
N22-昆山-Dexter_WangN22-昆山-Dexter_Wang
上一篇 2016-10-17
下一篇 2016-10-17

相关推荐

  • linux基础命令之ls命令

                    linux 基本命令之ls命令   ls (list): 列出指定目录下的内容,默认 ls=’ls –color=auto’,通过命…

    Linux干货 2017-03-26
  • N25第八周学习总结_sed命令详解

    sed使用详解 大纲: 1、    sed是什么 2、    为什么要使用sed 3、    sed使用方法 4、    sed详解   正题: 1、    sed是什么 sed全名Stream Ed…

    2017-02-26
  • CentOS的软件包的管理之rpm和yum

    在linux上,一个软件包通常由二进制程序,库文件,配置文件和帮助文件组成。 其中: 二进制程序一般都放在/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin和/usr/local/sbin这几个目录下边; 库文件都放在/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib和/usr/…

    Linux干货 2017-04-23
  • http://www.jianshu.com/p/aac6076e4ca2

    Linux干货 2017-07-29
  • btrfs文件系统管理与应用

    btrfs(b-tree、butter fs、better fs),oracle公司研发的替代ext系列的cow机制的文件系统;GPL 核心特性: 多物理卷支持;btrfs可由多个底层物理卷组成;支持RAID,以联机“添加”、“移除”、“修改”; 写时复制更新机制(CoW):复制、更新及替换指针,而非“就地”更新; 数据及元数据校验码:checksum 子卷…

    Linux干货 2017-12-18
  • corosync + pacemaker + iscsi实现高可用mysql (上)

    一、实验图   二、准备实验环境:  1)确保sql服务器之间可以基于主机名通信 [root@SQL1 ~]# vim /etc/hosts 172.16.2.13  SQL1.linux.com  SQL1 172.16.2.14  SQL2.li…

    Linux干货 2015-07-09