示例脚本及注释


#!/bin/bash echo "No code, just some comments." # ### 通配符
# * 代表任意(0个或多个)字符
# ? 代表任意1个字符
# [abc] 匹配括号中任意一个字符
# [!abc] 不匹配括号中任意一个字符,等价于[^abc]
# [a-z] 匹配括号中字符范围内的任意一个字符
# {a,b,c} 生成序列,以逗号分隔,且不能有空格
# {a..z} 生成指定范围的序列 # ### 参数变量
# $0 当前shell脚本的名称
# $n 当前shell脚本的第n个参数,$1是第一个参数,$2是第二个参数,${10}是第十个参数
# $* 当前shell脚本的所有参数(不包括脚本本身),将所有参数当作一个字符串整体
# $@ 当前shell脚本的所有参数(不包括脚本本身),循环遍历所有参数
# $# 当前shell脚本的参数个数(不包括脚本本身)
# $$ 当前shell脚本的PID
# $? 最后一个指令的返回值(退出状态);0表示没有错误,非0表示有错误 # ### 特殊符号
# # 注释;“#!”作为shell脚本行首,指定解释器
# $ 引用变量;普通用户的命令提示符
# ${} 正规引用变量的方式,能够区分变量的边界,可在字符串中表示变量
# = 赋值,等号两侧没有空格
# / 根目录;路径分隔符;运算符的除法
# \ 屏蔽别名;转义字符;放在一行命令的末端,表示换行
#
# '' 单引号,无法变量置换,所见即所得
# "" 双引号,可以变量置换,解析变量输出和特殊符号;字符串内出现双引号本身,需要转义
# `` 反引号,引用命令的结果,等价于$()
#
# | 管道,使用形式“命令1|命令2”和“|xargs”
# & 后台执行
#
# {} 代码块,代码在当前shell执行,不产生subshell,代码块中的变量在代码块之后仍能访问;用于函数定义
# () 命令组,命令以“;”分割,所有命令都在子shell中执行,其中所定义的变量,仅作用于命令组本身,使用$获取()的值;初始化数组
# (()) 整数扩展,执行里面的整数表达式,使用$获取(())的值
# [] 测试在[]内的表达式
# [[]] 测试在[[]]内的表达式,可以使用“&&,||,<,>”等逻辑操作符
# $[] 整数扩展,执行里面的整数表达式,并返回表达式的值
#
# : 空命令,只是返回值0;作为while死循环的条件;在if分支中作为占位符(即某一分支什么也不做)
# ; 分隔多个命令,依次执行
# ;; case语句中选项的终结符
# , 运算中的"区隔" # ### 目录操作
# ~ “cd ~”进入当前用户的家目录
# - “cd -”进入用户上一次所在的目录,由环境变量$OLDPWD控制;“su -”切换用户并重新加载环境变量;选项的前缀
# .. 上一级目录
# . 当前目录;隐藏文件的文件名开头;正则表达式中表示任意一个字符 # ### 逻辑操作
# ! “非”;vi/vim中的强制退出;命令行下调用历史命令,“!<string>”、“!!”、“!<number>”等
# && “与”;当前一个指令执行成功时,执行后一个指令
# || “或”;当前一个指令执行失败时,执行后一个指令 # ### 字符串比较
# = 等于,等价于“==”
# != 不等于 # ### 运算符
# + 加法
# - 减法
# * 乘法
# / 除法
# ** 求幂
# % 求模(除法的余数)

Shell - 简明Shell入门14 - 操作符(Operator)的更多相关文章

  1. Shell - 简明Shell入门

    本文以示例和注释的方式,对Shell编程的基本知识点进行了总结和回顾,所有脚本均已做了基本的调试和验证. Shell - 简明Shell入门 01 - 第一个脚本 脚本的定义.执行方法以及echo命令 ...

  2. Shell - 简明Shell入门01 - 第一个脚本(HelloShell)

    示例脚本及注释 #!/bin/bash echo "hello shell!" # 打印字符串"hello shell!" echo "Date: & ...

  3. Shell - 简明Shell编程

    本文是对Shell脚本编程的总结和回顾,所有涉及的脚本均已做了基本的调试和验证. [toc] 测试环境信息 [root@CentOS7 ~]# uname -a Linux CentOS7 3.10. ...

  4. Shell - 简明Shell入门15 - 调试(Debug)

    示例脚本及注释 #!/bin/bash -x for filename in t1 t2 t3 do touch $filename.txt echo "Create new file: $ ...

  5. Shell - 简明Shell入门13 - 用户输入(UserInput)

    示例脚本及注释 1 - arguments #!/bin/bash if [ -n "$1" ];then # 验证参数是否传入 echo "The first para ...

  6. Shell - 简明Shell入门12 - 定制输出(ColorOutput)

    示例脚本及注释 #!/bin/bash echo -e "\033[32m" # 设置输出属性,绿色字体 echo "This is a test!" echo ...

  7. Shell - 简明Shell入门11 - 调用脚本(CallTheScript)

    示例脚本及注释 主脚本: CallTheScript.sh #!/bin/bash . ./11-subscript.sh # 调用其他脚本;注意点号"."和文件路径之间有一空格; ...

  8. Shell - 简明Shell入门09 - 重定向(Redirection)

    示例脚本及注释 #!/bin/bash pwd > 1.log # 输出重定向到指定文件 date 1> 1.log # ">"与"1>" ...

  9. Shell - 简明Shell入门08 - 函数(Function)

    示例脚本及注释 #!/bin/bash function Check() # 使用function定义函数 { Say # 通过函数名直接调用函数 if test $1 then return 0 # ...

随机推荐

  1. ubuntu 从零安装tf-serving环境和opencv

    参考官网:https://www.tensorflow.org/serving/setup 首先是安装gprc: pip install grpcio 然后发现没有安装pip,报错:sudo: pip ...

  2. 微信H5支付 遇到坑的一些解决方法

    解决办法 1. 商家参数格式有误,请联系商家解决 a.对于前后端分离的开发模式 前端发起请求 服务端请求微信h5支付统一下单接口 返回参数mweb_url 给前端 然后前端调起微信h5支付 b.注意的 ...

  3. 167. Two Sum II - Input array is sorted (Array)

    Given an array of integers that is already sorted in ascending order, find two numbers such that the ...

  4. HDU 6304 Chiaki Sequence Revisited

    题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=6304 多校contest1   Problem Description Chiaki is int ...

  5. vue上线后,背景图片路径错误

    build 下的utils.js中添加配置 if (options.extract) { return ExtractTextPlugin.extract({ use: loaders, public ...

  6. load 过高分析办法

    1.top -H 找到占用cpu较高的进程2.top -Hp pid 找到该进程下占用cpu较高的线程id3.sudo -u adminjstack -F 进程id > ~/stack.txt ...

  7. VS打开SSAS或SSIS报错的解决办法

    ---------------------------Microsoft Visual Studio---------------------------无法加载类型为“Microsoft.Analy ...

  8. [leetcode]57. Insert Interval插入区间

    Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessa ...

  9. 震惊!90%的程序员不知道的Java知识!

    震惊!90%的程序员不知道的Java知识! 初学Java的时候都会接触的代码 public static void main(String[] args){ ... } 当时就像背公式一样把这行代码给 ...

  10. py2和py3的区别总结

    1.编码 python2默认编码方式ASCII码(不能识别中文,要在文件头部加上  #-*- encoding:utf-8 -*-  指定编码方式) python3默认编码方式unicode(可识别中 ...