(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 实践、常用脚本的更多相关文章

  1. shell的常用脚本一

    批量创建用户名脚本: ######################################################################### # File Name: cr ...

  2. shell常用脚本

    shell常用脚本 author:headsen chen  2017-10-17 15:36:17 个人原创,转载请注明,否则依法追究法律责任 1,vim  name.grep.sh 2,cat   ...

  3. 常用脚本语言Perl,Python,Ruby,Javascript一 Perl,Python,Ruby,Javascript

    常用脚本语言Perl,Python,Ruby,Javascript一 Perl,Python,Ruby,Javascript Javascript现阶段还不适合用来做独立开发,它的天下还是在web应用 ...

  4. shell中常用的特殊符号

    在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `co ...

  5. Bash Shell启动配置脚本的顺序

    1.Bash检查环境变量文件的方式,取决于系统运行Shell的方式,通常系统运行Shell有3种方式: )通过系统用户登陆后默认运行的Shell )非登陆交互式运行Shell )执行脚本运行非交互式S ...

  6. Shell编程-01-Shell脚本初步入门

    目录 什么是Shell 什么是Shell脚本 Shell脚本语言的种类 常用操作系统默认Shell Shell 脚本的建立和执行 脚本规范 什么是Shell     简单来说Shell其实就是一个命令 ...

  7. linux Shell中常用的条件判断

    linux Shell中常用的条件判断 -b file            若文件存在且是一个块特殊文件,则为真 -c file            若文件存在且是一个字符特殊文件,则为真 -d ...

  8. 生产力工具:shell 与 Bash 脚本

    生产力工具:shell 与 Bash 脚本 作者:吴甜甜 个人博客网站: wutiantian.github.io 注意:本文只是我个人总结的学习笔记,不适合0基础人士观看. 参考内容: 王顶老师 l ...

  9. oracle 常用脚本以及语句

    oracle 常用脚本以及语句 一.oracle 安装10G 单机初始化环境: #!/bin/bash #关闭selinuxsed -i 's\SELINUX=enforcing\SELINUX=di ...

  10. -Shell 教程 Bash 脚本 基础语法 MD

    目录 目录 Shell 简介 Shell 脚本 Shell 环境 第一个shell脚本 Shell 变量 定义变量 使用变量 只读变量 删除变量 Shell 字符串 单引号 双引号 字符串基本操作 S ...

随机推荐

  1. RxJava2-后台执行耗时操作,实时通知 UI 更新(一)

    一.前言 接触RxJava2已经很久了,也看了网上的很多文章,发现基本都是在对RxJava的基本思想介绍之后,再去对各个操作符进行分析,但是看了之后感觉过了不久就忘了. 偶然的机会看到了开源项目 Rx ...

  2. react useRef()函数

    "ref"对象是一个通用容器,其current属性是可变的 保存dom function Test() { const t = useRef(null); useEffect(() ...

  3. hibernate06--参数的绑定

    创建Dept实体类 以及 对应的 Dept.hbm.xml文件 /** * @author 小豆腐 * *部门的实体类 */ public class Dept { private Integer d ...

  4. Tanya and Candies

    Tanya and Candies time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  5. C++常用的文件操作路径函数

    shlwapi.dll中的实用API函数发布 在windows   system目录下有这个动态链接库  BOOL PathFileExists(LPCTSTR lpszPath)功能:检查文件/路径 ...

  6. Apache hardoop 的基础知识学习总结

    hardoop的主要构成: (1)HDFS 分布式文件系统,解决海量数据存储 (2) YARN 解决资源任务调度(包括作业调度和集群资源调度) (3)MapReduce 解决海量数据计算 集群搭建的步 ...

  7. python语法_终止循环_break_continue

    break 终止整个循环计算 continue 终止本次循环,continue前的代码执行,continue后的代码不执行,下次循环继续.

  8. JVM—内存溢出、OutOfMemoryError、StackOverflowError

    学习jvm时看到几篇非常好的系列文章,转载了: <深入理解Java虚拟机>学习小记一之自动内存管理机制(一) http://my.oschina.net/linuxfelix/blog/1 ...

  9. ES6 Map 与 Set

    Map 对象 Map 对象保存键值对.任何值(对象或者原始值) 都可以作为一个键或一个值. Maps 和 Objects 的区别 一个 Object 的键只能是字符串或者 Symbols,但一个 Ma ...

  10. 16.2-uC/OS-III同步 (事件标志组)

    事件标志组 1.当任务要与多个事件同步时可以使用事件标志.若其中的任意一个事件发生时任务被就绪, 叫做逻辑或(OR).若所有的事件都发生时任务被就绪,叫做逻辑与( AND). 2.用户可以创建任意个事 ...