马哥教育N36第三周作业

1.定义一个对所有用户都生效的命令别名,例如:lftps=‘lftp 172.168.0.1/pub’

以bash shell 为例,用户命令别名生效的顺序,用户登录bash后首先读取当前用户目录中的 .bashrc 文件,然后读取 /etc/bashrc 文件,最后读取所有 /etc/profile.d/*.sh脚本。因此可以在/etc/profile.d/目录中新建一个.sh脚本,然后在脚本中写入需要的命令别名。

2.显示/etc/passwd文件中不以/bin/bash结尾的行
grep -v '/bin/bash$' /etc/passwd
3.找出/etc/passwd文件中,包含二位数字或者三位数字的行
grep -E '[0-9]{2,3}' /etc/passwd
4.显示/proc/meminfo文件中以大写或小写S开头的行(用三种方式实现)
#方法一:
grep '^[Ss]' /proc/meminfo
#方法二:
sed -n '/^[sS]/p' /proc/meminfo
#方法三:
awk '/^[sS]/{print}' /proc/meminfo
5.使用echo输出一个绝对路径,使用egrep取出路径名,类似执行dirname /etc/passwd 的结果
echo /etc/passwd | egrep -o '^/.*/\b'
#sed方法
echo '/etc/fstab' | sed -nr 's@(/.*/)([^/]+/?)@\1@p'
6.找出ifcofnig中的ip地址(要求结果只显示IP地址)

下面的正则表达式并不能准确匹配IP,但是在这个题目中能满足要求

ifconfig | grep -woE '([0-9]{1,3}\.){3}[0-9]{1,3}'
7.vim定制自动缩进四个字符

在用户家目录中的.vimrc 配置文件中添加 下面的行

set autoindent
set shiftwidth=4
8.编写脚本,实现自动添加三个用户,并计算这三个用户的uid之和
echo newuser1 newuser2 newuser3 | xargs -n1 useradd &>/dev/null
declare -i uid1=$(id -u newuser1)
declare -i uid2=$(id -u newuser2)
declare -i uid3=$(id -u newuser3)
declare -i sum=$uid1+$uid2+$uid3
echo "the three new users uid's sum is $sum"
9.find用法以及常用用法的示例演示

它是实时查找工具,通过遍历指定的路径来完成文件的查找。注意:一个命令作用在多个条件时,要加括号,否则命令将默认只作用在相邻的条件上。
语法规则如下:
find [option]… [查找路径] [查找条件] [处理动作]

查找条件解释
-name后接文件名称,支持使用通配符 * 、?、[]、[^]
-iname后接文件名,不区分大小写
-inum后接inode号
-samefile后接文件名,查找与之相同inode号的文件
-links后接连接数,查找连接数为n的文件
-regex以pattern匹配整个文件路径字符串
-user查找属主为指定用户的文件
-group查找属组是指定组的文件
-uid查找属主为指定uid的文件
-gid查找属主为指定gid的文件
-nouser查找没有属主的文件
-nogroup查找没有属组的文件
-type后接文件类型,常见类型有:f,d,l,s,b,c,p
-a组合条件关系,表示与的关系
-o组合条件关系,表示或的关系
-not组合条件关系,表示非的关系
-size后接 +或者- n Unit ,这个值表示的是一个区间。-n 表示的区间是 [0,n-1],n 表示的区间是(n-1,n], +n 表示的区间是 (n,∞)。常用单位是:k,M,G,c(byte)
-atime以天为单位查询文件时间。-n 表示[0,n) ,n 表示 [n,n+1),+n 表示[n+1,∞)
-mtime查找文件的修改时间
-ctime查找文件的状态时间
-amin以分钟为单位查询文件时间。-n 表示[0,n) ,n 表示 [n,n+1),+n 表示[n+1,∞)
-mmin查找文件的修改时间
-cmin查找文件的状态时间
-perm后接权限模式,常用数字格式的权限模式。755 表示匹配的权限恰好是755,/755 只要ugo任意一个中任何一个rwx位权限能匹配就OK,-755 ugo都必须要拥有对应的权限,可以大于这个权限。
处理动作解释
-print默认的处理动作
-ls类似于 ls -l 结果
-delete删除查找到的文件,慎用
-fls后接文件,将查找到的结果保存到文件中
-ok cmd {} \;对查找到每个文件执行cmd
-exec cmd {} \;同上就是不会每一个都询问了

常见用法:

用法解释
find / -name file -type [f|d]根据名字从根目录开始查找文件或目录
find / -user username根据用户名查找
find -name ‘*.[ch]’使用通配符模糊查找时,一定要单引号括起来
find -iname snow.png忽略大小写
find -user joe -group joe指定用户和组
find -user joe -o -user jane指定用户名或组
find -not \ ( -user joe -o -user jane \ )查找既不是joe也不是jane用户的文件,标记的地方中间是没有空格,博客的原因如没有空格显示有问题
find / -user joe -o -uid 500在/ 下查找属主是joe或者uid是500的文件
find /tmp \ ( -not -user root -a -not -name ‘f*’ \ ) -ls找出/tmp目录下,属主不是root,且文件名不以f开头的文件
find /etc -path ‘/etc/sane.d’ -a -prune -o -name “*.conf”查找etc目录中除了sane.d目录,其他以conf结尾的文件
find -perm 755查找当前目录中权限是755的文件
find /tmp -ctime +3 -user joe -ok rm {} \;提示删除存在时间超过3天以上的joe的临时文件
find ~ -perm -002 -exec chmod o-w {} \;在你的主目录中寻找可被其它用户写入的文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
马哥教育是一家教育机构,专注于Python编程的培训。他们提供了多个课程,包括Python基础、全栈开发、爬虫、数据分析、算法和人工智能等领域。他们的教育课程涵盖了Python所涉及的各个领域,并且价格相对较为亲民。据引用的描述,参加了马哥教育的Python课程后,他们觉得之前的学习都白费了,课程的内容和难度都很高,并且能够帮助他们在工作中更好地应对任务。引用中提到,他们的课程时长约为500个课时,价格相对于其他机构来说较为合理,而且涵盖了Python的多个领域。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [马哥python课堂笔记-马哥教育PYTHON相关基础笔记.pdf](https://download.csdn.net/download/qq_43934844/87905115)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [马哥python 培训](https://blog.csdn.net/weixin_63757190/article/details/121762215)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值