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

[root@www ~]# egrep "^(root|fedora|user1)" /etc/passwd|cut -d: -f1,7
root:/bin/bash
user1:/bin/bash
fedora:/bin/zsh

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

[root@www ~]# egrep "\w+\(\)" /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@www ~]# echo "/var/log/messages"|egrep -o "[^/]+\/?$"
messages
# 取出其路径名
[root@www ~]# echo "/var/log/messages"|grep -o "^/.*/"
/var/log/

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

[root@www ~]# ifconfig |egrep -o "\<([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>"

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

[root@www ~]# ifconfig | egrep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"
192.168.1.141
255.255.255.0
192.168.1.255
127.0.0.1
255.0.0.0

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

[root@www ~]# egrep -o  "\w+@\w+\.(cn|com)" /etc/test.txt
tom@163.com
jerry@163.com
zhangsan@testdomain.cn

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

[root@www ~]# find /var/ -user root -a -group mail -ls
134295636 0 drwxrwxr-x 2 root mail 103 12月 30 00:38 /var/spool/mail
136092594 884 -rw------- 1 root mail 900983 12月 30 00:38 /var/spool/mail/root

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

[root@www ~]# find / -atime -3 -nouser -a -nogroup -exec ls -l {} \;
-rw-rw-rw- 1 1000 1000 6 12月 30 00:35 /etc/test.txt

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

[root@www ~]# find /etc/ -type f -perm -222 -ls
67190743 0 -rw-rw-rw- 1 root root 0 12月 30 00:10 /etc/test.txt

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

[root@www ~]# find /etc/ -type f -size +1M -exec ls -lh {} \;
-r--r--r--. 1 root root 6.7M 12月 4 18:22 /etc/udev/hwdb.bin
-rw-r--r--. 1 root root 3.7M 11月 21 2015 /etc/selinux/targeted/policy/policy.29

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

[root@www ~]# find /etc/init.d/ -perm -113 -ls
12777 0 -rwxr-xrwx 1 root root 0 12月 30 00:17 /etc/init.d/test.txt

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

[root@www ~]# find /usr/ -not \( -user root -o -user bin -o -user hadoop \) -ls
618038 0 drwx------ 2 polkitd root 6 6月 10 2014 /usr/share/polkit-1/rules.d

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

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

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

[root@www ~]# find /etc/ -mtime -7 -type f -a -not \( -user root -o -user hadoop \) -exec stat {} \;
文件:"/etc/test.txt"
大小:6 块:8 IO 块:4096 普通文件
设备:803h/2051d Inode:67190743 硬链接:1
权限:(0666/-rw-rw-rw-) Uid:( 1000/enzhi.wang) Gid:( 1000/enzhi.wang)
最近访问:2016-12-30 00:10:38.089508753 +0800
最近更改:2016-12-30 00:35:36.988831137 +0800
最近改动:2016-12-30 00:36:09.092832268 +0800
创建时间:-

Linux基础练习题(三)的更多相关文章

  1. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  2. Linux基础练习题之(四)

    Linux基础练习题 请详细总结vim编辑器的使用并完成以下练习题 1.复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的 ...

  3. Linux基础练习题

    1.列出当前系统上所有已经登录的用户名,注意:同一个用户登录多次,则只显示一次即可. [root@bj-1-160-enzhi ~]# who|cut -d ' ' -f 1|uniq -c 2 ro ...

  4. Linux基础(三)

    一.正文处理命令及tar命令 1.文件合并 cat a.txt b.txt > c.txt 2.打包 归档命令tar可以把多个文件打包成一个文件 如tar cvf test.tar a.txt ...

  5. linux基础练习题(3)

    关卡三 练习题 在家路径下创建A文件夹 在上一步创建的A文件夹中,创建B/C/D文件夹 在上一步所在的路径中,创建C/E/F文件夹 使用目录树查看文件夹结构 A/B/C中创建一个hello.py文件 ...

  6. linux基础练习题(2)

    Linux命令作业(关卡二) 练习题1 理解操作系统的作用,以及各种操作系统的不同 要求: 为什么要有OS?没有OS能行吗?原因是什么? Linux内核指的是什么? Linux主要应用在哪些地方? 使 ...

  7. linux基础练习题(1)

    Linux命令作业(关卡一) 练习题1 理解操作系统的作用,以及各种操作系统的不同 要求: 简述什么是OS 简述应用程序.硬件.OS的关系 列举出3种常见的操作系统 简述Ubuntu和Linux的关系 ...

  8. Linux基础命令(三)

    作业一:1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cat /etc/passwd /etc/group >/1.txt 2) 将用户信息数据库文件和用户 ...

  9. Linux 基础练习题

    Linux 测试 1.找出/proc/meminfo文件中以s开头的行,至少用三种方式忽略大小写 [root@localhost proc]# grep -i '^s' /proc/meminfo [ ...

随机推荐

  1. Docker学习总结

    本文作为总结性文章,不会详细讲解Docker.但会把已学习的.了解的内容按照由易到难的顺序串起来,更多的是帮助Docker新手快速的了解Docker,知道目前处在哪个阶段,接下来该学些什么,避免碰太多 ...

  2. Linux Hadoop2.7.3 安装(单机模式) 一

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...

  3. WCF学习之旅—TCP双工模式(二十一)

    WCF学习之旅—请求与答复模式和单向模式(十九) WCF学习之旅—HTTP双工模式(二十) 五.TCP双工模式 上一篇文章中我们学习了HTTP的双工模式,我们今天就学习一下TCP的双工模式. 在一个基 ...

  4. js和jquery实现简单的选项卡

    选项卡切换在做网页的时候经常会用到,以往都是用JQ来实现,代码简单易懂,今天用原生的js实现了一下,二者还是有很大不同的,可以对比一下代码来研究一下. <!DOCTYPE html> &l ...

  5. ASP.NET MVC5+EF6+EasyUI 后台管理系统(2)-easyui构建前端页面框架[附源码]

    系列目录 前言 为了符合后面更新后的重构系统,本文于2016-10-31日修正一些截图,文字 我们有了一系列的解决方案,我们将动手搭建新系统吧. 后台系统没有多大的UI视觉,这次我们采用的是标准的左右 ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(48)-工作流设计-起草新申请

    系列目录 创建新表单之后,我们就可以起草申请了,申请按照严格的表单步骤和分支执行. 起草的同时,我们分解流转的规则中的审批人并保存,具体流程如下 接下来创建DrafContoller控制器,此控制器只 ...

  7. Ajax 提交KindEditor的数据

    这次我是在EasyUI中使用了KindEditor的编辑器,按照官方给的代码,总是无法获取编辑器里面的值(内容),如下:         KindEditor.ready(function (K) { ...

  8. DDD 领域驱动设计-如何完善 Domain Model(领域模型)?

    上一篇:<DDD 领域驱动设计-如何 DDD?> 开源地址:https://github.com/yuezhongxin/CNBlogs.Apply.Sample(代码已更新) 阅读目录: ...

  9. 学习SpringMVC——说说视图解析器

    各位前排的,后排的,都不要走,咱趁热打铁,就这一股劲我们今天来说说spring mvc的视图解析器(不要抢,都有位子~~~) 相信大家在昨天那篇如何获取请求参数篇中都已经领略到了spring mvc注 ...

  10. Kafka消费组(consumer group)

    一直以来都想写一点关于kafka consumer的东西,特别是关于新版consumer的中文资料很少.最近Kafka社区邮件组已经在讨论是否应该正式使用新版本consumer替换老版本,笔者也觉得时 ...