[Shell]常用语法
赋值
FILE=$1 //=两边不能有空格
echo $FILE
逻辑判断
表达式
、if [ expression ]; then ... fi //[]两边必须有空格
、 if [[ expression ]]; then ... fi
、
if expression1 -o expression2; then
elif expression; then
else
fi 组合判断条件
-a: and
-o: or
!: 非 命令间逻辑关系
&& || //和其他语言意义一致 eg1: 判断a大于b并且小于c
、 if (( a > b )) && (( a < c ))
、 if [[ $a > $b ]] && [[ $a < $c ]]
、 if [ $a -gt $b -a $a -lt $c ]
| -eq | == |
| -ne | != |
| -gt | > |
| -ge | >= |
| -lt | < |
| -le | <= |
| -z string | 字符是否为空,空为真,非空为假 |
| -n string | 是否为不空,空为假 非空为真 |
| -e FILE | 文件是否存在 |
| -f file | 文件是否为普通文件 |
| -d file | 是否为目录 |
| -r file | 文件对当前用户是否可读 |
| -w file | 文件对当前用户是否可写 |
| -x file | 文件对当前用户是否可执行 |
| -z | 是否为空 为空则为真 |
| -a | 是否不空 不空为真 |
循环
# for
for((i=;i<=;i++))
do
sth
done for i in $(seq ) for i in {..} awk 'BEGIN{for(i=1; i<=10; i++) print i}' for i in `ls`; for i in f1 f2 f3 ; list="GOD always love you!"
for i in $list; for file in /bin/*; do
echo $line
done # while
while true
do
sth
done #switch
case $char in
[A-Z][a-z])
sth
;;
[0-9])
sth
;;
*)
sth
esac
文本读写
for line in `cat filename`
do
echo $line
done
for line in $(cat filename)
do
echo $line
done
while read -r line #-r选项保证读入的内容是原始的内容,意味着反斜杠转义的行为不会发生
do
echo $line
done < filename
远程访问
ssh faith@$ip "grep 'DecodeBlob Error' /data/datac20181106/GameServer*/ERROR/*.log
Note
$? 上个命令执行成功,则为0,否则为1-255间的一个
$# 传参个数
$n 参数值
((exp)) exp可以不加$引用
set -e 发生错误立刻退出
sh -n ***.sh 检查shell语法
//判断上个命令执行是否成功
raise() {
if [ $? != ]; then echo "$1"; exit ;fi
}
[Shell]常用语法的更多相关文章
- shell常用语法
for.if条件: https://blog.51cto.com/qiufengsong/1252889 一.for循环: );do echo $i done ###第一行:seq是指1到10,第二行 ...
- linux shell常用语法
特殊变量 $0 当前脚本的文件名$n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数是$1,第二个参数是$2.$# 传递给脚本或函数的参数个数.$* 传递给脚本或函数的所有参 ...
- 【shell 大系】Linux Shell常用技巧
在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...
- Linux Shell常用技巧(目录)
Linux Shell常用技巧(一) http://www.cnblogs.com/stephen-liu74/archive/2011/11/10/2240461.html一. 特殊文件: /dev ...
- PHP中Smarty引擎的常用语法
PHP中Smarty引擎的常用语法 输出今天的日期: {$smarty.now|date_format:"%H:%M %A, %B %e, %Y"} 实际上用到了PHP的time( ...
- saltstack常用语法
一.常用语法 1.添加用户 示例1: #添加zabbix用户和组 zabbix: group.present: - name: zabbix - gid: 1001 user.present: - f ...
- Shell脚本语法---在Makefile等文件…
1. Shell脚本语法 1.1. 条件测试:test [ 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Sta ...
- Shell的语法
Shell的语法: 变量:字符串.数字.环境和参数: 条件:shell中的布尔值: 程序控制:if.elif.for.while.until.case: 命令列表: 函数: Shell内置命令: 获取 ...
- 1、uiautomator2常用语法
uiautomator2常用语法 连接设备 使用USB连接: d=u2.connect_USB('148b4090')输入手机序列号 d是给当前连接设备定位一个变量 获取设备的信息: print(d. ...
随机推荐
- k8s-secret用法
创建username和password文件: $ echo -n "admin" > ./username $ echo -n "1f2d1e2e67df" ...
- USB协议基础知识
ref : https://blog.csdn.net/u010142953/article/details/82627591 USB 基本知识 USB的重要关键概念: 1. 端点:位于USB设备 ...
- How does a browser know which response belongs to which request?
Today I knows that the server never send a request to a client! It just make response~ So,if the bro ...
- System.Data.EntityException: The underlying provider failed on Open.
场景:IIS默认站点建立程序,使用Windows集成身份验证方式,连接SQLServer数据库也是采用集成身份验证.我报“System.Data.EntityException: The underl ...
- [Tarjan系列] 无向图e-DCC和v-DCC的缩点
上一篇讲了如何应用Tarjan算法求出e-DCC和v-DCC. 那么这一篇就是e-DCC和v-DCC的应用之一:缩点. 先讲e-DCC的缩点. 我们把每一个e-DCC都看成一个节点,把所有桥边(x,y ...
- Python中的math常用方法总结(转)http://www.cnblogs.com/renpingsheng/p/7171950.html
python中math模块常用的方法整理 ceil:取大于等于x的最小的整数值,如果x是一个整数,则返回x copysign:把y的正负号加到x前面,可以使用0 cos:求x的余弦,x必须是弧度 ...
- 在Pytorch上使用稀疏矩阵
在Pytorch上使用稀疏矩阵 最近在写一个NLP的小项目,用到了Pytorch做神经网络模型.但是众所周知NLP的一个特点就是特征矩阵是稀疏矩阵,当时处理稀疏矩阵用的是scipy.sparse,现在 ...
- react import 配置路径别名'@',简化import Component的方式
摘要 在react中,大多数业务逻辑都组件化:极大的减轻了代码的冗余度,如果组件的层次比较深的话,组件的import就比较费劲,在import时使用“../../components/test”的方式 ...
- CSS设置元素的隐藏和显示
常见的三种方式 display display: none 隐藏对象 display: block 除了转换为块级元素以外,同时还有显示元素的意思 特点:隐藏之后不保留位置 visibility 值h ...
- 用Leangoo泳道完美实现Scrum任务看板
转自:https://www.leangoo.com/9568.html 在敏捷开发的实践当中,通过可视化的任务看板来实现团队协同和透明化管理是必不可少的一个实践.通过可视化的任务看板我们可以达到如下 ...