第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 22:38
下一篇 2017-07-27 10:51

相关推荐

  • 马哥教育网络班21期-第七周课程练习

    第七周作业 1、创建一个10G分区,并格式为ext4文件系统; [root@qq ~]# fdisk /dev/sdb         #使用fdisk命令进行分区; Device contains neither&nb…

    Linux干货 2016-08-08
  • 如何删除一个目录下的所有文件,但保留一个指定文件。附一些常用命令

    解答: 假设这个目录是/xx/,里面有file1,file2,file3..file10   十个文件 方法如下: find /date -type f ! -name “file10″|xargs rm -f 另外还有其他的方法比如:rsync命令和bush的 extglob功能等。在此不一一列举。 附常用命令: 文件和目…

    2017-07-15
  • Linux基础知识(二)

    一、Linux文件管理类命令的使用方法及其相关示例演示? 1、文件管理 (1)mkdir (2)rmdir (3)cp (4)mv (5)rm (6)touch 2、文件查看 (1)ls (2)tree (3)cat&tac (4)head (5)tail (6)more&less (7)stat 二、Bash特性详解 1、命令行展开 (1)…

    Linux干货 2016-09-27
  • 开班第一天,新获得的技能

    新接触命令 lscpu 显示CPU信息 gedit 文件名 类似于记事本 ** 注意 这个命令适用于图形界面。 cat /proc/partition 显示分区信息 cat /proc/meminfo 显示内存大小 cat /proc/swaps 显示虚拟内存 cat …

    Linux干货 2017-02-17
  • Linux的哲学思想

    一切皆文件:所有设备在linux都表现为一个文件,比如目录文件、块文件、字符文件、设备文件; 用小型,单一用途的程序完成复杂功能:复杂的任务可以通过连接多个简单的程序实现复杂的功能;配置服务器,只要修改配置文件即可实现;

    Linux干货 2018-03-04
  • ​HA专题: Corosync+Pacemaker+drbd实现MySQL高可用

    HA专题: Corosync+Pacemaker+drbd实现MySQL高可用 前言 实验拓扑 实验环境 实验步骤 安装前准备工作 配置DRBD 配置MySQL 配置Corosync+Pacemaker 测试 我遇到的问题 总结 前言 上篇文章我们介绍了drbd的相关原理、编译安装、简单的实现. drbd虽然可以保证数据的可靠性但是我们上次的实现还…

    Linux干货 2016-04-13

评论列表(1条)

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

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