Linux基础知识五

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

[[email protected] ~]# grep -E "^root\>|^fedora\>|^user1\>" /etc/passwd| cut -d: -f1,7
root:/bin/bash
user1:/sbin/nologin
fedora:/bin/bash

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

[[email protected] ~]# grep -E -o "[[:alpha:]]+\(\)" /etc/rc.d/init.d/functions 
str()
checkpid()
readlink()
fgrep()
checkpids()
kill()
loop()
fstab()
mtab()
loop()
mounts()
run()
pidof()
daemon()
killproc()
pidfileofproc()
pidofproc()
status()
success()
failure()
passed()
warning()
stage()
success()
failure()
passed()
warning()
action()
silent()
strstr()
confirm()
dev()
file()
true()
false()
sysctl()
random()
point()
crypto()

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

[[email protected] /]# echo ‘/etc/sysconfig/network-scripts/ifcfg-eth0‘ | egrep -o ‘[^/]+/?$‘ | cut -d‘/‘ -f1
ifcfg-eth0

扩展:取出其路径名

[[email protected] /]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0"|egrep -o "/.*/\b"  
/etc/sysconfig/network-scripts/

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

[[email protected] ~]# ifconfig | grep -Eo "\<[1-9]\>|\<[1-9][0-9]\>|\<[1][0-9][0-9]\>\<[2][0-4][0-9]\>|\<[2][5][0-5]\>"
29
20
31
20
31
255
255
255
255
64
1
251
6
4
3
1
255
1
1
8
3
8
3

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

[[email protected] ~]#  ifconfig | egrep -o "(\<[1-9]\>|\<[1-9][0-9]\>|\<[1][0-9][0-9]\>|\<[2][0-4][0-9]\>|\<[2][5][0-5]\>)\.(\<[0-9]\>|\<[1-9][0-9]\>|\<[1][0-9][0-9]\>|\<[2][0-4][0-9]\>|\<[2][5][0-5]\>)\.(\<[0-9]\>|\<[1-9][0-9]\>|\<[1][0-9][0-9]\>|\<[2][0-4][0-9]\>|\<[2][5][0-5]\>).(\<[0-9]\>|\<[1-9][0-9]\>|\<[1][0-9][0-9]\>|\<[2][0-4][0-9]\>|\<[2][5][0-5]\>)"
192.168.31.20
192.168.31.255
255.255.255.0
127.0.0.1
255.0.0.0

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

 ^[[:alnum:]]+[-._]?[[:alnum:]][email protected][[:alnum:]]+(\.+[[:alpha:]]+)+

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

[[email protected] ~]# find /var -user root -a -group mail -ls
394494    4 drwxrwxr-x   2 root     mail         4096 Sep  2 22:03 /var/spool/mail
393510   92 -rw-------   1 root     mail        90186 Sep  2 20:46 /var/spool/mail/root

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

# find / -nouser -a -nogroup -ls

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

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

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

# find /etc -perm -222 -ls

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

# find /etc -size +1Ma -a -type f -ls

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

# find /etc/init.d -perm -113 -ls

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

find /usr/ -not \( -user root -o -user bin -o -user hadoop \) -ls

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

# find /etc -not -perm -222 -ls

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

# find /etc -mtime -7 -a -not \( -user root -o -user hadoop \) -ls
时间: 2024-10-09 21:58:27

Linux基础知识五的相关文章

Linux 基础知识(五)

一.每12小时备份并压缩/etc/目录到/back目录中,保存文件名格式为,etc-年-月-日-时-分.tar.gz) crontab -e *12/*** /usr/bin/tar -czf `date +%F-%H-%M`-etc.tar.gz /etc/ ??二.rpm包管理功能总结以及实例应用演示rpm命令:rpm [OPTIONS] [PACKAGE_FILE]安装:-i, --install升级:-U, --update, -F, --freshen卸载:-e, --erase查询:

Linux基础知识题解答(五)

题目来自老男孩BLOG:http://oldboy.blog.51cto.com/2561410/1709569,比较适合新手,空余的时候做一下,可以巩固Linux基础知识,有不对的地方欢迎指正. (1)155729 -rw-r--r--.  1 root root   35 Oct 28 2011  oldboy 请解析上面的每一列内容 文件inode号,文件访问权限,硬链接数,文件所属用户,文件所属组,文件最后修改时间,文件名 (2)描述下硬链接和软连接的区别 1.硬链接原文件/链接文件共用

Linux基础知识(2)

Linux基础知识: 一.程序管理: (1)程序的组成部分: (2)二进制程序: (3)配置文件: (4)库文件: (5)帮助文件: 二.程序包管理器: X: (1)程序的组成文件打包成一个或有限几个文件: (2)安装: (3)卸载: (4)查询: 三.安装Linux: 虚拟机安装Linux系统 需要设置计算机的CPU, 内存, IO等 四.虚拟化软件程序: vmwareworkstation和virtualbox虚拟机都可以安装系统 五.CentOS的镜像站点: http://mirrors.

linux基础知识---用户

用户和组 一.用户和组的概念 随着计算机对多用户需求越来越多,才引入了用户和组的概念.所谓的用户就是操作系统用来标识登陆系统的.就是用户和组是实现计算机资源分配的核心要素.组:是具有相同计算机资源(主要指权限)用户的一个集合. 在计算机内核中,用户和组都是一个数字,我们称之为UID和GID.UID和GID在系统中具有唯一性.实现这个过程进行名称解析才能完成,在Linux系统中使用glib库中的系统调用来完成. 二.用户识别 识别用户通过3A(Authentication,Authorizatio

Linux基础知识入门

[Linux基础]Linux基础知识入门及常见命令. 前言:最近刚安装了Linux系统, 所以学了一些最基本的操作, 在这里把自己总结的笔记记录在这里. 1,V8:192.168.40.10V1:192.168.40.11Linux ip:192.168.40.128 2,Linux是一个操作系统, 与windows的区别:Linux:图形化界面简单,性能很快,在企业中当做服务器来使用.Windows:图形化界面很炫,性能相对差,大众用户.windows的服务器: windows2003,win

(转)Linux基础知识学习

Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过修改配置文件来完成. 1.1.Linux磁盘分区 Linux可以将磁盘分为多个分区,每个分区可以被当做一个独立的磁盘使用,磁盘类型:主分区.扩展分区.逻辑分区. 主分区标记为活动,用于操作系统的引导,一块磁盘最多划分4个主分区,主分区存放操作系统的文件或用户数据. 扩展分区:主分区小于4个时才可以划

1、linux基础知识

第一天linux基础知识 1:linux操作系统组成 linux内核+GNU工具=完整的类UNIX系统 GNU工具(GNU软件是通过GNU项目发布的软件,它是一种根据GNU软件包的README手册以及自由软件指南开发的软件,大多数GNU软件是免费分发的,但不是所有的都这样,然而,所有的GNU软件必须是自由软件.) 2:linux发行版  slackware debian  reehad  Gentoo等 3:linux哲学思想 一切皆文件(硬件也已文件的形式展现在操作系统中) 小型,单一用途程序

linux基础知识第一节

用户接口: 是一种独特的应用程序,能够为用户提供启动其它应用程序的的机制 cli:命令提示符,用户输入要执行的命令即可, shell: 外壳 sh ,csh ,ksh ,   bash, zsh , tcsh gui: 通过点击操作来启动应用程序 gnome,  mainframe  大型机 多用户操作系统    多终端   终端:设备,显示器,鼠标,键盘 虚拟终端 表示:/dev/tty# ctrl-alt-f(1-6) 物理终端(控制终端)console 串行终端 伪终端 /dev/pts#

第二天linux基础知识

第二天linux基础知识 1:终端(用户与主机交互必然用到的设备) 物理终端:直接接入本机的设备 虚拟终端:以软件的方法虚拟实现的终端. 图形终端:属于虚拟终端 模拟终端:图形打开的命令行或基于远程登录协议打开的终端. 查看当前终端设备命令:tty 2:交互式接口(启动终端后,在终端附加的一个交互式程序) GUI:Graphic User Interface CLI:Command Line Interface 3:SHELL(shell是linux系统的用户界面,提供了用户与内核进行交互操作的