Linux Shell 脚本------表达式

知道脚本的存在,也会偷懒写一点用,但是真的不熟,最近想偷懒用脚本+log的方式跑训练程序,所以边查边写,凑合着写了一个能用的。

1、基本使用

  新建一个文件(run.sh),写上  

#!/bin/bash
th main.lua

  第一行一定要有,不然不能运行。

  修改权限: chmod +x run.sh  

       对于我的配色来说,run.sh 就变绿了,变绿就能运行了。

2、表达式

1 #!/bin/bash
2 epoch=40
3 for((i = 1; i < 100; i ++))
4     do
5         model_name="model_"${epoch}".t7"
6         th clear.lua -model $model_name
7         epoch=$(($epoch + 3 * $i))
8         th main.lua -resume ./ -nEpochs $epoch
9     done    

line 2: 变量赋值的时候,变量名和等号之间不可以有空格,不然按照 bash 是语法赋值失败

line 3: 在双小括号里可以加空格,因为双小括号里表示是运算

line 5: 字符串拼接方法,变量引用需要加 $ 符合,字符串拼接需要 { }

line 6 和 line 8: 是 torch7 的执行命令,后面是参数

line 7: (()) 内是表达式,表达式里运算符和变量之间一定要加好空格, 3 空格 * $i。 计算完成得到的是数值,赋值给变量的时候使用 $, 表示变量空间的赋值。

3、布尔类型

  引用内部变量:

    $ture

    $false

  

原文地址:https://www.cnblogs.com/xiaochun-zhao/p/9155366.html