Shell 实践、常用脚本
(1)计算1-100的和。
#!/bin/bash
n=
for i in `seq `
do
n=$[$i+$n]
done
echo $n
(2)输一个数字,然后计算出1到数字的和,要求如果输入数字小于1,则重新输入,知道输入正确为止。
n='abc'
if_num1() {
m=`echo $|sed 's/[0-9]//g'`
if [ -z $m ] && [ $n -gt ]
then
return
else
return
fi
}
while ! if_num1 $n
do
read -p "num: " n
done
a=
for i in `seq $n`
do
a=$[$n+$i]
done
echo $a
(3)把root目录下所有目录(只需要一级)拷贝到/tmp/目录下。
cd /root/
for i in `ls `
do
if [ -f $i ]
then
cp -rv $i /tmp/
fi
done
find /root/ -maxdepth –type d
(4)批量建立用户user_00,user_01..,user_100并且所有用户属于users组。
for i in `seq -w |sed 's/^0//g'`
do
useradd -g users user_$i
done
seq –f “%02q”
(5)截取文件x.txt中包含关键字,‘root’的行钟的第二列用“:”号分割然后把截取的数字排序,然后打印出次数超过10次的列。
#!/bin/bash
a_1=`cat /xiangsikai/li/.txt | grep root |uniq -c|awk '$1>10'`
echo "$a_1"
(6)输入一个IP不能大于255。不能小于0。
#!/bin/bash
checkip() {
if echo $ | egrep -q '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' ;then
a=`echo $ | awk -F. '{print $1}'`
b=`echo $ | awk -F. '{print $2}'`
c=`echo $ | awk -F. '{print $3}'`
d=`echo $ | awk -F. '{print $4}'` for n in $a $b $c $d;do
if [ $n -ge ] || [ $n -le ];then
echo "no of zhe IP >255"
return
fi
done
else
echo "no no no !!! 192.168.1.1"
return
fi
} rs=
while [ $rs -gt ];do
read -p "IP: " ip
checkip $ip
rs=`echo $?`
done
echo "IP is right!"
(7).写一个脚本实现把一个目录下所有文件(不包括目录)全部在文件后面加一个.bak。
命令:cd /xiangsikai/li/ for i in `ls`
do
if [ -f $i ];then
mv $i $i.bak
fi
done
注:还可以用 find /xiangsikai/li/ -type f
(8)写一个文件将当前目录下大于100k的文件移动到目录下。
#!/bin/bash
for i in `find /xiangsikai/li/ -type f -size +10k`
do
mv $i /xiangsikai/shell/ti/
done
(9)写一个脚本获取本机的HOSTNAME,IP,DNS。
#!/bin/bash
host=`hostname`
echo "HOSTNAME:$host" ip_1=`ifconfig eth0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'`
echo "eth0:$ip_1" dns=`cat /etc/resolv.conf | grep "name" |awk '{print $2}'`
echo "DNS:$dns"
(10)写两个脚本验证break和continue再循环中的作用。
for i in `seq `
echo $i
do
if [ $i -eq ]
then
break
fi
echo $i
done
注:break改为continue。
Shell 实践、常用脚本的更多相关文章
- shell的常用脚本一
批量创建用户名脚本: ######################################################################### # File Name: cr ...
- shell常用脚本
shell常用脚本 author:headsen chen 2017-10-17 15:36:17 个人原创,转载请注明,否则依法追究法律责任 1,vim name.grep.sh 2,cat ...
- 常用脚本语言Perl,Python,Ruby,Javascript一 Perl,Python,Ruby,Javascript
常用脚本语言Perl,Python,Ruby,Javascript一 Perl,Python,Ruby,Javascript Javascript现阶段还不适合用来做独立开发,它的天下还是在web应用 ...
- shell中常用的特殊符号
在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `co ...
- Bash Shell启动配置脚本的顺序
1.Bash检查环境变量文件的方式,取决于系统运行Shell的方式,通常系统运行Shell有3种方式: )通过系统用户登陆后默认运行的Shell )非登陆交互式运行Shell )执行脚本运行非交互式S ...
- Shell编程-01-Shell脚本初步入门
目录 什么是Shell 什么是Shell脚本 Shell脚本语言的种类 常用操作系统默认Shell Shell 脚本的建立和执行 脚本规范 什么是Shell 简单来说Shell其实就是一个命令 ...
- linux Shell中常用的条件判断
linux Shell中常用的条件判断 -b file 若文件存在且是一个块特殊文件,则为真 -c file 若文件存在且是一个字符特殊文件,则为真 -d ...
- 生产力工具:shell 与 Bash 脚本
生产力工具:shell 与 Bash 脚本 作者:吴甜甜 个人博客网站: wutiantian.github.io 注意:本文只是我个人总结的学习笔记,不适合0基础人士观看. 参考内容: 王顶老师 l ...
- oracle 常用脚本以及语句
oracle 常用脚本以及语句 一.oracle 安装10G 单机初始化环境: #!/bin/bash #关闭selinuxsed -i 's\SELINUX=enforcing\SELINUX=di ...
- -Shell 教程 Bash 脚本 基础语法 MD
目录 目录 Shell 简介 Shell 脚本 Shell 环境 第一个shell脚本 Shell 变量 定义变量 使用变量 只读变量 删除变量 Shell 字符串 单引号 双引号 字符串基本操作 S ...
随机推荐
- 关于4A网络安全管控平台控件加载失败的解决方法
最近电脑重装系统后,到公司登录4A管控平台提示"控件加载失败","无效的参数为:Null","点击资源无任何反映"等等问题 别人的电脑用的好 ...
- Mac os的使用
来北京入职java开发实习,公司标配macook.一开始不会使用macos系统,用起来很不适应,我是拒绝的.但是leader说mac是开发效率最高的工具了·.一开我很怀疑,后来觉得mac系统用起来还真 ...
- Nestjs 增加全局前缀
文档 const app = await NestFactory.create(AppModule); app.setGlobalPrefix('v1'); // http://localhost:5 ...
- Ubuntu 离线安装Mysql
一.安装包 先从网络上,下载Mysql安装包,复制到U盘 下载地址:https://dev.mysql.com/downloads/mysql/ 二.挂载U盘 2.1查看分区 先输入命令 cat ...
- 03.Django的MTV开发模式详解和模型关系构建
ORM:对象关系映射 一:MTV开发模式把数据存取逻辑.业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的 Model-View-Controller(MVC)模式. 在这个模式中,Model 代 ...
- PHP(Dom操作的一些基础)
重点!! //DOM操作: // 核心思想:找到元素 操作元素// js找元素 会返回元素对象:// document.getElementById("dd");唯一确定// 返回 ...
- 前端 html 篇
1 link和@import的区别是? 区别1:link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务:@import属于CSS范畴,只能加载CSS. 区别2:link引用CS ...
- Django之Cookie、Session、CSRF、Admin
Django之Cookie.Session.CSRF.Admin Cookie 1.获取Cookie: 1 2 3 4 5 6 request.COOKIES['key'] request.get ...
- (转)spring中的拦截器(HandlerInterceptor+MethodInterceptor)
1. 过滤器跟拦截器的区别 在说拦截器之前,不得不说一下过滤器,有时候往往被这两个词搞的头大. 其实我们最先接触的就是过滤器,还记得web.xml中配置的<filter>吗~ 你应该知道 ...
- java框架之SpringBoot(13)-检索及整合Elasticsearch
ElasticSearch介绍 简介 我们的应用经常需要使用检索功能,开源的 Elasticsearch 是目前全文搜索引擎的首选.它可以快速的存储.搜索和分析海量数据.SpringBoot 通过整合 ...