shell编程的一些例子3
数值处理
1.let 命令
bash 的内部命令let可以用来计算算术表达式的值。如果表达式中有空格或者特殊字符,则应将表达式括在双引号中。
let的语法命令:let express-list
如果最后表达式的值为0,let命令返回1;否则返回0
$let "x=6" "y=9" "z=16"
$let t=x+y
$echo "t=$t"
t=15
$let A=2**x B=y*z
$echo "A=$A B=$B"
A=64 B=144
2. 使用bash扩展语法来求算术表达式的值
命令语法:$ ((expression))
例子:
age_check文件内容
#!/bin/bash
echo -n "How old are you"
read age
echo "Wow , in $((100-age)) years ,you will be 100!"
3.expr 命令
expr 命令将它的参数当作一个表达式来求值。expr命令语法如下:
命令语法:expr args
功能:计算表达式的参数"args" 的值,并返回它的值到标准输出。
例子:
demo_addall文件内容
#!/bin/bash
if [ $# -eq 0 ]
then
echo "Usage:$0 number-list"
exit 1
fi
sum=0
count=0
while [ $# -ne 0 ]
do
sum=$( expr $sum + $1 )
if [ $? -ne 0 ]
then
exit 1
fi
count=$((count+1))
shift
done
echo "The sum of the given $count numbers is $sum."
exit 0
shell编程的一些例子3的更多相关文章
- shell编程的一些例子5
1.here文档 here文档允许我们调用一个交互式程序:可以从脚本程序中输出大量的文本,从而不必echo每行 例子1: #!/bin/bash cat<<!DATA! This is a ...
- shell编程的一些例子4
bash支持一维数组 1.数组定义: name= (value1,value2...valueN) value形如[[subscript]=]string [subscript]= 是可选项 如果没 ...
- shell编程的一些例子2
控制语句: 1.if语句 demo_if #!/bin/bash if [ $# -ne 1 ] then echo "参数多于一个" exit 1 fi if [ -f &quo ...
- shell编程的一些例子1
1.$0-$9及$# $@的使用 demo_arg 内容 #!/bin/bash echo "程序名:$0" echo "命令传递参数个数:$#" echo & ...
- ? 原创: 铲子哥 搜狗测试 今天 shell编程的时候,往往不会把所有功能都写在一个脚本中,这样不太好维护,需要多个脚本文件协同工作。那么问题来了,在一个脚本中怎么调用其他的脚本呢?有三种方式,分别是fork、source和exec。 1. fork 即通过sh 脚本名进行执行脚本的方式。下面通过一个简单的例子来讲解下它的特性。 创建father.sh,内容如下: #!/bin/bas
? 原创: 铲子哥 搜狗测试 今天 shell编程的时候,往往不会把所有功能都写在一个脚本中,这样不太好维护,需要多个脚本文件协同工作.那么问题来了,在一个脚本中怎么调用其他的脚本呢?有三种方式,分别 ...
- Linux下的Shell编程(1)最简单的例子
深入地了解和熟练地掌握Shell编程,是每一个Linux用户的必修 功课之一. 从第一行开始 我们可以使用任意一种文字编辑器编写shell脚本,它必须以如下行开始(必须放在文件的第一行): #!/bi ...
- Linux Shell编程入门
从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操 ...
- Shell编程菜鸟基础入门笔记
Shell编程基础入门 1.shell格式:例 shell脚本开发习惯 1.指定解释器 #!/bin/bash 2.脚本开头加版权等信息如:#DATE:时间,#author(作者)#mail: ...
- 【转载】shell编程——if语句 if -z -n -f -eq -ne -lt
shell编程中条件表达式的使用 if 条件then Commandelse Commandfi 别忘了这个结尾 If语句忘了结尾fites ...
随机推荐
- 为Windows 7的winsxs目录瘦身,谨慎。
刚使用Win7 系统不久,前段时间在清理系统垃圾时发现,win7系统的windows文件夹下的winsxs 文件夹占用空间很大,想清理之,却提示无权限无法清理.随即在网上查了个到底,原来winsxs是 ...
- Percona-toolkit的安装和配置-杨建荣的学习笔记
http://blog.itpub.net/23718752/viewspace-2091818/#rd
- careercup-递归和动态规划 9.5
9.5 编写一个方法,确定某字符串的所有排列组合. 类似leetcode:Permutations 解法: 跟许多递归问题一样,简单构造法非常管用.假设有个字符串S,以字符序列a1a2a...an表示 ...
- Poco库网络模块例子解析1-------字典查询
Poco的网络模块在Poco::Net名字空间下定义 下面是字典例子解析 #include "Poco/Net/StreamSocket.h" //流式套接字 #include ...
- NIO学习:使用Channel、Buffer写入文件
NIO的效率要高于标准IO,因为NIO将最耗时的IO操作(填充和提取缓冲区)转移会操作系统.NIO以块为单位传输数据,相比标准IO的以字节为单位效率要高很多. 通道和缓冲时NIO的核心对象,每个NIO ...
- iOS之定位与地图
概览 现在很多社交.电商.团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用 和导航应用所特有的.的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式.例如你到了一 ...
- iOS之AVPlayer的简单应用
1.引入系统框架 2.创建视频的url 3.创建播放项目 4.初始化播放器 5.设置播放页面 //引入系统文件 #import <AVFoundation/AVFoundation.h> ...
- Android_Component_example
xml布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...
- Velocity 入门(一)
Velocity是一种Java模版引擎技术,该项目由Apache提出.因为非常好用,和工作中有啥用,所以我在在理简单的入门一下. 网上找了很多教程,写的不是很明白,要么就是全部拷贝下来时候运行不起来. ...
- Socket的3次握手链接与4次断开握手
http://blog.sina.com.cn/s/blog_810c860001018tir.html 连接握手: 1.客户端发送建立连接请求 2.服务端确认连接请求 3.客户端确认已经连接 以上3 ...