shell第二次练习
1、取出/etc/inittab文件的第6行;
[root@bogon ~]# cat -n /etc/inittab1 # inittab is no longer used when using systemd.2 #3 # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.4 #5 # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target6 #7 # systemd uses 'targets' instead of runlevels. By default, there are two main targets:8 #9 # multi-user.target: analogous to runlevel 310 # graphical.target: analogous to runlevel 511 #12 # To view current default target, run:13 # systemctl get-default14 #15 # To set a default target, run:16 # systemctl set-default TARGET.target17 #
[root@bogon ~]# head -6 /etc/inittab | tail -1
#
2、取出当前系统上所有用户的shell,要求,每种shell只显示一次,并且按顺序进行显示;
使用cut、sort结合管道实现
[root@bogon ~]# cut -d : -f 7 /etc/passwd | sort -u
/bin/bash
/bin/sync
/sbin/halt
/sbin/nologin
/sbin/shutdown
3、如果/var/log/messages文件的行数大于100,就显示好大的文件
[root@bogon ~]# [ $(wc -l < /var/log/messages) -gt 100 ] && echo "好大的文件"
好大的文件
4、显示/etc目录下所有以pa开头的文件,并统计其个数
[root@bogon ~]# find /etc -name pa* | wc -l
16
5、如果用户hadoop不存在就添加,否则显示用户已存在
[root@bogon ~]# ! id hadoop &>/dev/null && useradd hadoop | echo "用户已存在"
用户已存在
6、编写一个 Shell 程序 test1,程序执行时从键盘读入一个目录名,然后 显示这个目录下所有文件的信息
[root@bogon ~]# mkdir /test1
[root@bogon test1]# touch a{1..5}
[root@bogon test1]# ls
a1 a2 a3 a4 a5[root@bogon shell]# vim test1.sh//添加如下
#!/bin/bashread -p "请输入目录名:" dir
if [ -d $dir ]
thenls $dir
elseecho "目录不存在!"
fi[root@bogon shell]# sh test1.sh
请输入目录名:/test1
1 2 3 4 5 6
7、编写一个 Shell 程序 test2,从键盘读入 x、y 的值,然后做加法运算,最后输出结果
[root@bogon shell]# vim test2.sh//添加如下内容
#!/bin/bash
read -p "请输入第一个数:" x
read -p "请输入第二个数:" y
echo $[x+y][root@bogon shell]# sh test2.sh
请输入第一个数:1
请输入第二个数:1
2
shell第二次练习相关推荐
- Shell第二篇:正则表达式和文本处理工具
一 什么是正则 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 生活中处处都是正则: 比如我们描述:4条腿 ...
- shell第二课 选择结构
0.read命令 这个命令是读取输入. #! /bin/bashread mystrecho $mtstr 输入 hello world! 输出 hello world! 1.条件 test 或者 [ ...
- shell打开wifi命令_远程执行命令的填坑记录
前言 本文主要记录 bash 四种模式的细节,以便于遇到问题时查阅. 远程执行出错了 最近使用 ansible 比较多,在某次使用 shell 模块远程执行命令的时候老是报 'command not ...
- Linux shell初识及权限理解
shell初识 Linux严格意义上说的是一个操作系统,我们称之为"核心(kernel)" ,但我们一般用户,不能直接使用kernel. 而是通过kernel的"壳&qu ...
- shell之系统命令基础
系统命令 1.什么是系统命令 shell解释器对系统接口的封装结果 系统命令/shell命令->shell解释器->系统接口->内核->硬件 应用程序->系统命令/she ...
- shell二之条件检测与数学运算
shell第二部分 一.数学运算符 1.expr 2.$(( )) 双括号计算 3.乘方的计算 4." " | bc 5.let 累加累减 二.重定向与管道符号 1.重定向 (1) ...
- Shell 开发的经验总结、从入门到深度教程、收藏!小姐姐一篇教会你写90%的shell脚本!
时间流逝,再回头去看看过去的东西,才会发现哪些东西比较重要,故撰此文,记录我在过去学习和使用shell语言过程中我个人觉得比较重要的部分,做一个小总结和分享. 文章目录 1.shell是什么 2.变量 ...
- Shell脚本语言基础一
第一点:Shell介绍 Shell编译 --掌握基本Shell使用,修改和应用Shell 第二点:什么是Shell 脚本语言,编译库(应用技术) 第三点:Shell环境 Mac环境支持Shell开发 ...
- Linux命令行与shell脚本编程大全学习(linux命令行部分)
第一章 初识Linux shell 第二章 走进shell 第三章 基本的bash shell命令 cd pwd:显示出shell当前目录 ls -F -R -l *和?和[ ]和[ a - i ]和 ...
- linux awk详解
1.字段的理解 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切 ...
最新文章
- pandas将dataframe中的年、月、日数据列合并成完整日期字符串、并使用to_datetime将字符串格式转化为日期格式
- thinkphp链接mssql以及查询中文乱码问题
- Intel Realsense 如何获取已连接所有摄像头的序列号参数?context() query_devices() size() camera_info device_list
- python遍历循环中的遍历结构可以是什么_(一)Python入门-4控制语句:06for循环结构-遍历各种可迭代对象-range对象...
- 经典面试题(7):下面的代码运行结果是什么么?
- 架设流媒体服务器[转]
- 可信云认证累计达20项,腾讯云技术创新能力再获专业认可
- Apache和Nginx防盗链
- mysql order by random,sql-MySQL:ORDER BY RAND()的替代方法
- spark规范化读取数据
- python sybase安装
- 招聘网站数百万条敏感数据泄露,简历、×××扫描件统统曝光
- 整理数组去重与数组排序等方法
- 树线段hdu 4508 美素数(线段树)
- keil用c语言编程怎么打开,用keil软件新建,关闭,打开一个完整工程的操作流程...
- gitlab+jenkins+maven+docker持续集成(二)——maven安装配置
- 从零开始学算法 - 快速排序
- Java非对称加密开发(三)-代码及说明
- unity序列帧动画
- 规则引擎Drools使用 第二篇Drools规则引擎介绍
热门文章
- python—gc.collect()清楚内存
- 图论算法——无向图的深度优先搜索和广度优先搜索
- 多少人受够了机器学习的锤,却连个决策树都说不出!
- Microsoft Office SharePoint Server 2007-协同办公之师
- Git版本控制:Git查阅、撤销文件修改和撤销文件追踪
- 二叉树三种遍历非递归算法
- eclipse导入github项目(踩多个坑后发现这个最实用)
- python发送邮件廖雪峰_使用python发送邮件(一)
- bash sbin/start-yarn.sh出现localhost: rcmd: socket: Permission denied
- 十八.描述符(__get__,__set__,__delete__)