linux 基础知识学习(五)

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

注释:egrep ‘^(root|fedora|usr1)\>‘ /etc/passwd 从/etc/passwd中查找root,fedora,user1用户,存在就匹配,不存在就跳过;

cut -d: -f1,7    截取第一和第七字段

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

注释:参考的cix123 同学的博文,觉得很详细,所以也记下来:

^[_[:alpha:]]+  _ :表示以_或大小写字母开头,

+ :表示前面字符可以出现一次或多次,

\(\):其实可以拆为\(  和 \),使用的 \转义符;

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

注释:如果 echo"/tmp/log" 后面没有 "/",则使用 grep -E -o "[^/]+$"

如果 echo"/tmp/log/" 后面有 "/",则使用 grep -E -o "[^/]+/?$" , /? 表示可以出现1次或不出现

扩展:取出其路径名

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

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

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

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

注释:目前在用的系统里没有符合匹配的,于是换了个属组gdm, 但是效果是一样的,这点可以灵活处理

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

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

注释:-mtime -n +n 按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。

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

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

注释:-size +文件大小  -type 文件类型

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

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

注释:Hadoop 用户没有,业务系统,就不乱动它了;另外后面加个more是因为匹配的文件太多翻了,懒得翻页;

更简单的方式:find /usr  -not \(  -user root -o -user bin -o -user hadoop  \)

这里有个坑我提示下: "\("  与 "-user" 之间须用 空格 隔开,不然就会报下面的错,当时我也没明白,郁闷了很久才发现。

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

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

注释:find /etc/ -mtime -7 是查找最近一周内修改过的文件;-not -user root -not -user -hadoop 是查找不属于root或hadoop 的文件

关于 -a 和 -o 参数的小说明:-a:and, 如果条件1为假则条件2不执行;  -o: or,如果条件1位真则条件2不执行。

时间: 2024-12-21 23:04:31

linux 基础知识学习(五)的相关文章

(转)Linux基础知识学习

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

linux基础知识学习-linux架构

硬盘分区: 第一扇区(512bytes): MSR:master boot record (446bytes)主引导分区 partion table:(64bytes)分区表,四个.可以是主分区(primary)或者扩展分区(Extended), 每个表指向磁盘某段区间.最多只有一个扩展分区,扩展分区里面可以扩展多个逻辑分区.其余扇区(柱面(cylinder)):实际存储的地方 linux 中(\etc/fstab):IDE  总线形式不同 (a~d)/dev/hda SATA,SCSI,USB

linux基础知识学习笔记

1.Linux介绍 Linux版本: 内核版本:最基本的核心程序,只要用于企业和个人在此基础自行开发所需功能. 发行版本:在内核基础上增加了一些常用软件,满足企业和用户直接使用的基本需求. Linux应用领域: 个人桌面:图形桌面开发 服务器领域:整个系统就像dos命令行一样,全部命令操作. 嵌入式领域(智能硬件):在Linux基础上开发自己所需的功能然后将程序烧到硬盘中去执行. 后两个实用最广泛: 2.Linux目录和文件操作 Linux目录: Linux的四种文件类型: 1.可分享的 可以分

Linux基础知识学习

常用的命令: 1.awk:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本 使用方法

linux 基础知识学习(三)

1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可. 2.取出最后登录到当前系统的用户的相关信息. 3.取出当前系统上被用户当作其默认shell的最多的那个shell. 4.将/etc/passwd 中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中. 5.取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分. 6.列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保

linux基础知识-第五天

Linux文件系统上的特殊权限 SUID, SGID, Sticky 权限 r, w, x user, group, other 安全上下文 前提:进程有属主和属组:文件有属主和属组: (1) 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限: (2) 启动为进程之后,其进程的属主为发起者:进程的属组为发起者所属的组: (3) 进程访问文件时的权限,取决于进程的发起者: (a) 进程的发起者,同文件的属主:则应用文件属主权限: (b) 进程的发起者,属于文件的属组:则

linux 基础知识学习(四)

1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. 2.编辑/etc/group文件,添加组hadoop. vim /etc/group   G到最末尾,o 编辑加入一行 3.手动编辑/etc/passw d文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号:其家目录为/home/hadoop. 4.复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用

linux 基础知识学习(七)

1.创建一个10G分区,并格式为ext4文件系统: (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl: (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳: 虚拟机添加磁盘后无法立即识别时:echo '- - -' > /sys/class/scsi_host/host0/scan  host0这里也可能是host1,host2,可以多试几次. 2.创建一个大小为1G的swap分区,并创建好

linux 基础知识学习(六)

1.复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#: cp /etc/rc.d/rc.sysinit /tmp/ vim /tmp/rc.sysinit :%s/^[[:space:]]/#&/ :%s/\(^ \)/#/g 匹配格式:  s/要查找的内容/要替换的内容/g全局 2.复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符: c