week4 作业
week4 作业
1、定义一个对所有用户都生效的命令别名,例如:lftps='lftp 172.168.0.1 /pub'
在 ~/.bashrc中添加命令:
alias = 'rm -i'
2、显示/etc/passwd文件中不已/bin/bash结尾的行
grep -v ".*/bin/bash$" /etc/passwd
3、找出/etc/passwd文件中,包含两位数和三位数的行
grep "\<[0-9]\{2,3\}\>" /etc/passwd
egrep "\<[0-9]{2,3}\>" /etc/passwd
4、显示/proc/meminfo中以大写或小写s开头的行,三种方法:
grep -i ^s /proc/meminfo
grep ^[Ss] /proc/meminfo
grep -E "^(s|S)" /proc/meminfo
5、使用echo输出一个绝对路径,使用egrep取出路径名,类似执行dirname /etc/passwd 的效果。
echo /etc/sysconfig/network-scripts/ifcfg-ens33/ | egrep -o "[^/]+/?$"
echo /etc/sysconfig/network-scripts/ifcfg-ens33/ | egrep -o ".*/\<"
6、找出ifconfig中的ip地址,要求结果只显示ip地址。
ifconfig | grep -o "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"
7、vim定制自动缩进4个字符
vim /etc/vimrc
添加
set tabstop=4
保存退出
8、编写脚本,实现自动添加三个用户,并计算三个用户的UID之和。
#!/bin/bash
[ $# -ne 3 ] && echo -e "\e[1;31mArgs num must be 3 \e[0m" && exit
useradd $1 &> /dev/null
[ `echo $?` -ne 0 ] && echo -e "\e[1;31mthe username $1 is exist,please change another! \e[0m" && exit
useradd $2 &> /dev/null
[ `echo $?` -ne 0 ] && echo -e "\e[1;31mthe username $2 is exist,please change another! \e[0m" && exit
useradd $3 &> /dev/null
[ `echo $?` -ne 0 ] && echo -e "\e[1;31mthe username $3 is exist,please change another! \e[0m" && exit
ID1="`id $1 -u`"
ID2="`id $2 -u`"
ID3="`id $3 -u`"
sumid=$[ID1+ID2+ID3]
echo $sumid
此脚本有问题,创建 1 2 3 三个用户,假如1 2 以前未创建,3已创建,当执行这个脚本的时候会创建用户1和用户2,到创建用户3时退出,未达到一旦发现有任何一个用户已经创建就退出的目的。
9、find用法及实例演示
见博文find详解
week4 作业的更多相关文章
- 《Linux内核分析》 week4作业-使用嵌入式汇编调用一个系统调用
一.fork的嵌入式汇编执行 #include <stdio.h> #include <unistd.h> int main(){ pid_t pid; asm volatil ...
- Week4——结对练习&团队作业1
Deadline: 2017-10-14 10:00PM,以博客发表日期为准. 评分基准: 按时交 - 有分(结对代码-10分,结对博客-10分,团队博客-10分),检查的项目包括后文的三个方面 按要 ...
- 团队博客作业Week4 --- 学霸网站--NABC
1.需求(Need) 伴随着经济的发展,科学技术取得了飞速的发展,互联网在各行各业的发展中取得了广泛的应用.随着这些事物的发展,我们每个人都会接触到相当庞大的数据.如何在这些数据中找到自己需要的,如何 ...
- 软件工程第4次作业------石墨文档Android客户端案例分析
作业要求的博客链接:https://edu.cnblogs.com/campus/nenu/2016CS/homework/2505 分析产品:石墨文档Android客户端 第一部分 调研和评测 1. ...
- week4b:个人博客作业
下面是week4做程序的过程. 1.在做之前先做客户需求,要求使用的使用mul图. 自己第一次听到这个名字,网上查UML为, http://www.cnblogs.com/wangkangluo1/a ...
- 【Python学习笔记】Coursera课程《Using Databases with Python》 密歇根大学 Charles Severance——Week4 Many-to-Many Relationships in SQL课堂笔记
Coursera课程<Using Databases with Python> 密歇根大学 Week4 Many-to-Many Relationships in SQL 15.8 Man ...
- 《程序员思维修炼》读书笔记——week4
<程序员思维修炼>读书笔记——week4 PB16061441 陈昶金 这周读的是Andy Hunt的著作<程序员思维修炼>,这本书对于我这种刚刚入门的新手很友好,大多是讲一些 ...
- 《Using Python to Access Web Data》Week4 Programs that Surf the Web 课堂笔记
Coursera课程<Using Python to Access Web Data> 密歇根大学 Week4 Programs that Surf the Web 12.3 Unicod ...
- 《Python Data Structures》 Week4 List 课堂笔记
Coursera课程<Python Data Structures> 密歇根大学 Charles Severance Week4 List 8.2 Manipulating Lists 8 ...
随机推荐
- 死磕并发之CountDownLatch解析
CountDownLatch解析 CountDownLatch是什么 CountDownLatch是基于AQS的阻塞工具,阻塞一个或者多个线程,直到所有的线程都执行完成. CountDownLatch ...
- c++中的四种智能指针
c++中的四种智能指针 写惯了python,golang再来写c++总觉得头大,很大一个原因就是他没有一个GC机制. 不过c++中提供了智能指针,也不是不能用,李姐万岁! auto_ptr, shar ...
- 从头到尾说一次 Java 垃圾回收,写得非常好! (转)
之前上学的时候有这个一个梗,说在食堂里吃饭,吃完把餐盘端走清理的,是 C++ 程序员,吃完直接就走的,是 Java 程序员.
- Codeforces 1209F. Koala and Notebook
传送门 考虑到达某个点时的数长度要尽量短,那么可以把边长看成此边十进制下的位数 那么对于最终答案我们只要考虑最短路 $DAG$ 上的情况 又发现其实边长都很小,所以可以暴力拆边,把边权都拆成 $1$, ...
- java判断一个单向链表是否有环路
今天刷LeetCode刷到一道这样的题,详情参见(https://leetcode-cn.com/problems/linked-list-cycle/) ADT: class ListNode { ...
- redis为什么使用单线程 ,还那么快,单线程是怎么实现的
单线程使用队列 为什么使用单线程 https://baijiahao.baidu.com/s?id=1628498089535886382&wfr=spider&for=pc http ...
- DSP、SSP、RTB、ADX(概念通俗解释)
DSP:需求方平台 比如小米想要投放一个新机发布的广告,那么他想在各大网站如网易.新浪UC等地方投放这条新机信息,但他不可能一个一个的去谈,费时费财不说,效率非常低. 于是他就去了一个平台,把打广告的 ...
- varchar nvarchar 设计长度时 设计成 (2^n)-1 的好处
这个问题想说已久就是博没共享出来 首先提出个问题 CREATE TABLE `test` ( `a` ) DEFAULT NULL, ) ENGINE=InnoDB DEFAULT CHARSET=u ...
- python语音提示
#coding:utf8 import win32com.client speaker = win32com.client.Dispatch("SAPI.SpVoice") whi ...
- Docker 镜像 容器 仓库
Docker 包括三个基本概念镜像(Image)容器(Container)仓库(Repository) Docker 镜像 Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序.库.资 ...