一 test 测试:

测试命令 test [ ] [[ ]] (( ))
打开man test 逐一介绍每个参数

浮点计算:echo 'scale=2;1/3'|bc -l
 

测试操作
命令执行后会返回到一个系统变量中 $?
如果$?值为0 表示命令执行成功 否则为失败

二流程控制: if   while   for

#!/bin/bash
read -p 'please input username:' usr
read -p 'please input passwd:' passwd if [ $usr = 'alex' -a $passwd = 'alex3714' ];then
echo 'login successful'
else
echo 'username or password is worng'
fi

用户测试

!/bin/bash
age=
while :
do read -p 'input oldboy age:' ag if [ $ag -eq $age ];then
echo "bingo"
break
elif [ $ag -gt $age ];then
echo "the age is older"
else
echo "the age is younger"
fi if [ -z $ag ];then
continue
fi done

猜年龄

#!/bin/bash
read -p 'please input your score:' score if [ $score -ge ];then
echo 'excellent'
elif [ $score -ge -a $score -lt ];then
echo 'good'
elif [ $score -ge -a $score -lt ];then
ehco 'not bad'
else
echo 'bad'
fi

成绩查询

#!/bin/bash
read -p 'input your file: ' file
if [ -p $file ];then
echo "$file is block file"
elif [ -f $file ];then
echo "$file is reuler file"
elif [ -d $file ];then
echo "$file is directory file"
else
echo "$file is unkown"
fi

测文件类型

#!/bin/bash
for ((i =;i<=;i++))
do
for ((j=;j<=i;j++))
do
echo -n "$i*$j=$[$i*$j] "
done
echo
done

九九乘法表

#!/bin/bash
usr='mona'
passwd=''
tag=true
while $tag
do
read -p 'please input your name: ' name
read -p 'please input your password: ' pd
if [ $name = $usr ] && [ $pd = $passwd ];then
echo 'login successful'
while $tag
do
read -p 'input your indirction: ' cmd
if [ $cmd = 'quit' ];then
tag=false
else
$cmd
fi
done
fi
done

登录用户操作

Shell 语句的更多相关文章

  1. shell语句for循环

    一:常用格式 格式一 for 变量 do 语句 done 格式二 for 变量 in 列表 do 语句 done 格式三 for ((变量=初始值; 条件判断; 变量变化)) do 语句 done 二 ...

  2. 简单的shell语句

    1,重启tomcat 脚本: pid=`ps -ef|grep tomcat |grep -v grep |awk '{print $2}'` ##取tomcat的进程号,awk处理字符串 ,取一行的 ...

  3. 测试常用shell语句——数值,数组类型;函数创建

    一.特殊类型的变量 shell下默认的变量类型为字符串类型 1,数值类型 如果进行数值运算,有这么几种方法 方法一: declare -i sum sum=+ echo $sum 方法二: sum=$ ...

  4. 轻便的一句话反弹shell语句

    反弹shell往往是在攻击者无法直接连接受害者的情况下进行的操作,原因有很多,例如目标是局域网,或者开启防火墙的某些策略等情况,而这时,我们就可以让受害者主动向攻击者发起连接,被控端发起请求到控制端某 ...

  5. shell语句记录-awk

    cat ./daily_uv/daily_uv_20140104 | awk '{fr[$1]+=$3; k=$1 "_" $2; av[k]+=$3;} END{for (k i ...

  6. MySQL常用shell语句

    1.连接数据库 格式:mysql -h ip -P port -u user -p 2.修改某一列的值 格式:update tablename set column1 = 'xxx', column2 ...

  7. shell语句

    一.判断目录是否存在:#!/bin/bash#/bin/bash -n filename.sh 判断语句是否正确 DIR=/root/zhjif [ ! -d $DIR ];then mkdir $D ...

  8. hbase各种遍历查询shell语句 包含过滤组合条件

    import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Li ...

  9. 常用的shell语句 【awk】去重,排列

    目的:从日志access.log中,筛选出IP来,并统计每个IP出现的次数,然后显示出来. 因为:awk = 扒IP  shot = 排序  uniq =  去重 所以:awk '{print $1} ...

随机推荐

  1. Android开发教程:shape和selector的结合使用(转载)

    shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector.可以这样说,shape和 ...

  2. svn删除账户信息

    当我们需要清理eclipse中记录的SVN账号信息时,按如下操作: eclipse中打开window------>preferences------->SVN页面,如下所示: 一般情况下, ...

  3. Webkit内核探究【2】——css简介

    注:[转载请注明文章来源.保持原样] 出处:http://www.cnblogs.com/jyli/archive/2010/01/31/1660364.html 作者:李嘉昱 CSS在Webkit中 ...

  4. Unity3D学习笔记——NGUI使用常见问题

    一:在Scene中右键创建UI组件. 首先要确定NGUI中的红框能看见,我的就是之前无法现实红框,所以右键无法新建UI组件, 原因是:UIPanel没启用. 启用方法: 启用前和启用后NGUI界面对比 ...

  5. Android-ViewPagerIndicator框架使用——TitlePageIndicator

    前言:TitlePageIndicator这个就是效果比较好. 一:定义布局文件simple_titles: <LinearLayout xmlns:android="http://s ...

  6. php中使用curl来post一段json数据

    场景:在调用第三方接口时经常需要使用到curl进行数据交互,在初次使用时遇到一些小问题,记录下来随时查阅. 封装curl相关方法便于使用,方法如下: /** * @param $url * @para ...

  7. mysqldump: Got error: 1045

    问题:最近备份mysql然后在执行mysqldump的时候提示权限和密码有问题 报错: Warning: Using a password on the command line interface ...

  8. JS将秒转换为 天

    function SecondToDate(msd) {             var time =msd             if (null != time && " ...

  9. angularjs 发送ajax请求的问题

    在angularjs中使用 ajax 如果使用 jquery的 ajax发送请求会遇到结果返回了,但是页面的值却没有改变,如: $scope.queryNameMatch = function() { ...

  10. Linux 装JDK

    1.查看当前系统有没有装jdk java -version 2.看看有没有安装包 rpm -qa | grep java 3.卸载OpenJDK $>rpm -e --nodeps tzdata ...