N22-第五周作业

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

[root@localhost ~]# cat /etc/passwd | grep "^root" | cut -d: -f7

/bin/bash

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

[root@localhost ~]# cat /etc/init.d/functions | egrep  "\<[_[:alpha:]]+\>\(\)"

checkpid() {

__pids_var_run() {

__pids_pidof() {

daemon() {

killproc() {

pidfileofproc() {

pidofproc() {

status() {

echo_success() {

echo_failure() {

echo_passed() {

echo_warning() {

update_boot_stage() {

success() {

failure() {

passed() {

warning() {

action() {

strstr() {

is_ignored_file() {

is_true() {

is_false() {

apply_sysctl() {

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

扩展:取出其路径名

对于/var/log/messages/型的路径名,先去掉最后的/,再用sed分别取基名路径名

[root@localhost ~]# echo "/var/log/messages/" | sed -r  's@/$@@' | sed -r 's@/.*/@@'

messages

[root@localhost ~]# echo "/var/log/messages/" | sed -r  's@/$@@' | sed -r 's@[^/]+$@@'

/var/log/

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

[root@localhost
~]# ifconfig | egrep -o
"\<25[0-5]\>|\<2[0-4][0-9]\>|\<1[0-9][0-9]\>|\<[1-9][0-9]\>|\<[1-9]\>"

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

[root@localhost
~]# cat txt | egrep
"(\<25[0-5]\>.|\<2[0-4][0-9]\>.|\<1[0-9][0-9]\>.|\<[1-9][0-9]\>.|\<[0-9]\>.){3}(\<25[0

-5]\>|\<2[0-4][0-9]\>|\<1[0-9][0-9]\>|\<[1-9][0-9]\>|\<[0-9]\>)"

0.0.0.0

255.255.255.255

10.237.0.100

172.100.0.0

192.168.255.255

1.1.1.1

[root@localhost ~]# cat txt

0.0.0.0

255.255.255.255

10.237.0.100

172.100.0.0

192.168.255.255

0.266.192.168

10.300.6.78

9.6.6.500

1.1.1.1

10237.1.1

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

   

一般来讲,邮箱格式如下:str1@str2.str3。其中str1由大小写字母和字母组成,可以在非开头处有下划线_,但不能有其他特殊字符。
str2可由数字和字母组成,不包含特殊字符,例如qq,163,gmail等,str3由字母组成,例如com,org,cn等。

[root@localhost ~]# cat txt | egrep "^[[:alnum:]]+[_[:alnum:]]*@[[:alnum:]]+\.[[:alpha:]]+$"

jack@163.com

jack@qq.com

jack@gmail.org

jack_123@sohu.cn

123abc@sohu.cn

123_456@qq.com

[root@localhost ~]# cat txt

jack@163.com

jack@qq.com

jack@gmail.org

jack_123@sohu.cn

jack%@sohu.cn

jack@@qq.com

jack@qq.123

jack@qqcom

123abc@sohu.cn

123_456@qq.com

_123@sina.com

123tyf_324.com

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

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

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

[root@localhost ~]# find / -nouser -o -nogroup

/home/mandriva

/home/mandriva/.mozilla

/home/mandriva/.mozilla/extensions

/home/mandriva/.mozilla/plugins

/home/mandriva/.bash_logout

/home/mandriva/.bash_profile

/home/mandriva/.bashrc

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

~]# find / \(-nouser -o -nogroup\) -atime -3

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

[root@localhost ~]# find /etc -perm -222 -ls

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

[root@localhost ~]# find /etc -size +1M -type f -ls

4000366 3772 -rw-r–r–   1 root     root      3858924 11月 21  2015 /etc/selinux/targeted/policy/policy.29

71169087 6852 -r–r–r–   1 root     root      7014922 7月 29 13:34 /etc/udev/hwdb.bin

2617920 1336 -rw-r–r–   1 root     root      1367395 3月  6  2015 /etc/brltty/zh-tw.ctb

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

~]# find /etc/init.d/  -perm -111 -perm /002 -ls

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

]# find /usr ! -user root ! -user bin ! -user hadoop -ls

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

~]# find /etc ! -perm -111  -ls

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

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

原创文章,作者:上海-brown,如若转载,请注明出处:http://www.178linux.com/46651

(0)
上海-brown上海-brown
上一篇 2016-09-15 22:21
下一篇 2016-09-15 22:21

相关推荐

  • Samba详解

    samba详解 yum list all | grep samba yum info samba yum -y install samba 服务端程序包:samba nmbd smbd rpm -ql samba-common rpm -ql samba-common-tools 主配置文件:/etc/samba/smb.conf systemd unit …

    Linux干货 2017-10-21
  • Nginx及Nginx模块——更加轻量级的HTTP server

    Nginx engine X = Nginx      NGINX is a free, open-source, high-performance HTTP server and reverse proxy, as well as an IMAP/POP3 proxy server. NGINX is known f…

    Linux干货 2016-10-25
  • 马哥教育网络班22期第一周课程练习1-未闻花名

    一、cpu架构 计算机体系结构: 运算器、控制器(cpu还包含寄存器)、存储器(内存)、输入设备(键盘、硬盘等)、输出设备(显示器、硬盘等) cpu组成: 核心部件:运算器(加法器)、控制器()、寄存器(由于数据总线复用,为cpu保存现场,过程数据记录)。 辅助部件:一、二、三级缓存:弥合CPU和内存速率不匹配。频率控制器? 地址总线:内存寻址。 数据总线:…

    Linux干货 2016-08-15
  • 重定向和管道

     重定向    程序:指令+数据    读入数据:Input    输出数据:Output  linux给程序提供三种I/O设备    标准输入(stdin)-0 默认接受来自键盘的输入    标准输出(stdinout)-1默认输出到终端…

    Linux干货 2016-08-10
  • LVS实现

    一 LVS-NAT实验前的准备 操作系统:CentOS 6.7 64位 配置防火墙,iptables –F 清理防火墙规则或者关闭iptables 关闭SELINUX, setenforce 0  #立即生效(实际是宽容模式) Director ip:172.16.2.1  VIP:192.168.1.8 RS1 ip:172.16.2.…

    Linux干货 2016-12-29
  • 第二周相关习题。

    习题 显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。 [root@localhost /]# ls -d /var/l*[0-9]*[[:lower:]] 显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。 [root@localhost&n…

    Linux干货 2016-11-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-19 18:59

    ip地址的匹配不对,0.0.0.0是不是不是有效的ip地址?