第5周

第5周

1.显示当前系统上root,fedora或user1用户的默认shell。

[root@node1 ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f 7
/bin/bash
/bin/bash
/bin/bash
[root@node1 ~]# grep "^\(root\|fedora\|user1\)\>" /etc/passwd | cut -d: -f 7
/bin/bash
/bin/bash
/bin/bash

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

[root@node1 ~]# grep -E "[[:alpha:]]+\(\)+" /etc/rc.d/init.d/functions
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取出其基名;扩展,取出其路径名。

取基名
[root@node1 ~]# echo /etc/rc.d/init.d/functions | grep -o "[^/]\+/\?$"
functions  

取路径名
[root@node1 ~]# echo /etc/rc.d/init.d/functions | grep -E -o "(/).*\1"
/etc/rc.d/init.d/

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

[root@node1 ~]# ifconfig | grep -E --color=auto "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>"

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

[root@node1 ~]# ifconfig | grep -E "(\<([0,1]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\>\.){3}\<([0,1]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\>"
      inet addr:192.168.33.129  Bcast:192.168.33.255  Mask:255.255.255.0
      inet addr:127.0.0.1  Mask:255.0.0.0

6.挑战提:写一个模式,能匹配出所有的邮件地址。

grep -E "([[:alph^C]]*|[0-9]*|[[:punct:]]*|\.|\@)"

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

[root@node1 ~]# find /var -user root -a -group mail -ls
134320628    4 drwxrwxr-x   2 root     mail         4096 Jul 26 11:43 /var/spool/mail
928    0 -rw-r--r--   1 root     mail            0 Jul 25 07:21 /var/test/find.test

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

[root@node1 ~]# find / -nouser -o -nogroup -type f | xargs ls -l
find: ‘/proc/2682/task/2682/fd/6’: No such file or directory
find: ‘/proc/2682/task/2682/fdinfo/6’: No such file or directory
find: ‘/proc/2682/fd/6’: No such file or directory
find: ‘/proc/2682/fdinfo/6’: No such file or directory
-rw-r--r--. 1 1005 distro  18 Nov 20  2015 /home/mandriva/.bash_logout
-rw-r--r--. 1 1005 distro 193 Nov 20  2015 /home/mandriva/.bash_profile
-rw-r--r--. 1 1005 distro 231 Nov 20  2015 /home/mandriva/.bashrc
-rw-rw----. 1 1005 mail     0 Jul 25 17:07 /var/spool/mail/mandriva
[root@node1 ~]# find / \( -nouser -o -nogroup \) -a -atime -3 | xargs ls -l
find: ‘/proc/2688/task/2688/fd/6’: No such file or directory
find: ‘/proc/2688/task/2688/fdinfo/6’: No such file or directory
find: ‘/proc/2688/fd/6’: No such file or directory
find: ‘/proc/2688/fdinfo/6’: No such file or directory
-rw-r--r--. 1 1005 distro  18 Nov 20  2015 /home/mandriva/.bash_logout
-rw-r--r--. 1 1005 distro 193 Nov 20  2015 /home/mandriva/.bash_profile
-rw-r--r--. 1 1005 distro 231 Nov 20  2015 /home/mandriva/.bashrc
-rw-rw----. 1 1005 mail     0 Jul 25 17:07 /var/spool/mail/mandriva  

/home/mandriva:
total 0

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

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

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

[root@node1 ~]# find /etc/ -size +1M -a -type f | xargs ls -lh
-rw-r--r--. 1 root root 3.7M Nov 21  2015 /etc/selinux/targeted/policy/policy.29
-r--r--r--. 1 root root 6.7M Jul 12 21:02 /etc/udev/hwdb.bin

原创文章,作者:ZhengBin,如若转载,请注明出处:http://www.178linux.com/82790

(0)
ZhengBinZhengBin
上一篇 2017-07-26
下一篇 2017-07-27

相关推荐

  • 简明 Vim 练级攻略

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。 ——————————正文开始—————————— …

    Linux干货 2015-04-04
  • 马哥教育网络班21期+第8周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别 集线器(HUB)是在OSI模型的第一层——物理层——连接多台主机、延长网络的设备。其主要功能是将从一个端口接收到的数据包转发给所有端口。中继器(Repeater)是将由电缆传过来的电信号或光信号调整波形和放大再传给另一个电缆的设备,提供多端口服务的中继器称作集线器。二者的主要区别是…

    Linux干货 2016-08-29
  • shell脚本一键安装二进制Apache

    安装背景:用的一台最小化安装的centos6。 编译安装安装的必备安装gcc,gcc-c++ 安装包arp,arp-util以及pcre的压缩包已经传到七牛,没有通过官网下载。太慢。 apache是通过官网下载的,所以下载比较慢,需要的话更改下地址 不足,只按照正常流程写,未做任何异常判断处理 #/bin/bash #一键安装Apache #安装GCC ec…

    Linux干货 2016-07-10
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限  cp -r /etc/skel  /home/tuser1   chmod 700 /home/tuser1 2、编辑/etc/gro…

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

    语法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。 参数: -f 代表[变量名称]中为函数名称。 -n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。 -p…

    Linux干货 2016-08-15
  • 关于大型网站技术演进的思考(六):存储的瓶颈(6)

    原文出处: 夏天的森林  在讲数据库水平拆分时候,我列出了水平拆分数据库需要解决的两个难题,它们分别是主键的设计问题和单表查询的问题,主键问题前文已经做了比较详细的讲述了,但是第二个问题我没有讲述,今天我将会讲讲如何解决数据表被垂直拆分后的单表查询问题。 要解决数据表被水平拆分后的单表查询问题,我们首先要回到问题的源头,我们为什么需要将数…

    2015-03-11

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-04 16:08

    find的功能非常强大,学有余力建议深入学习。