shell中冒号的特殊用法分享

: ${VAR:=DEFAULT}
当变量VAR没有声明或者为NULL时,将VAR设置为默认值DEFAULT。如果不在前面加上:命令,那么就会把${VAR:=DEFAULT}本身当做一个命令来执行,报错是肯定的。

(0)

相关推荐

  • Shell中特殊字符的用法总结大全

    前言 众所周知shell既是类Unix操作系统的命令解析器,用于解释执行用户输入的一连串命令,它类似于DOS下的command和后来Windows的cmd.exe.同时shell也是一种程序设计语言.作为命令解释型的脚本语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令:作为程序设计语言,它预定义了各种环境变量,保留了一些关键字以及一些特殊字符的含义,并提供了许多在高级语言中才具有的控制结构,包括循环和分支判断. 本文将给大家介绍关于Shell特殊字符用法的相关内

  • Linux Shell中的特殊符号和含义简明总结(包含了绝大部份)

    在Linux Shell中有很多的特殊符号,这对于我们写Shell脚本时要特别留意:一方面要知道这些特殊符号的用法,这些符号用好了可以达到事半功倍的效果:但另一方面要避免这些特殊符号的过度使用而导致脚本难以调试.难以阅读. 这些特殊符号罗列出来大致如下: 复制代码 代码如下: # ; ;; . , / / 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `command`{} [] [[]] () (()) || &~ ~

  • shell脚本中常见的一些特殊符号和作用详解

    在编写Shell脚本时,我们需要会用到各种各样的特殊符号,通过这些特殊符号可以使我们编写的代码更加简洁和高效,这里给大家汇总下: 1.{} 大括号: 用法一:通配符扩展 eg: ls my_{finger,toe}s 这条命令相当于如下命令的组合: ls my_fingers my_toes eg: mkdir {userA,userB,userC}-{home,bin,data} 我们将得到 userA-home, userA-bin, userA-data, userB-home, user

  • Shell脚本中的特殊字符(美元符、反斜杠、引号等)作用介绍

    Shell中的特殊字符有 1.$ 美元符 2.\ 反斜杠 3.` 反引号 4." 双引号 5.< ,>;,*,?,[,] 下面我一一举列说明 一.$符号 1.echo $? 显示的是上一条指令退出状态 2.echo "$?" 效果同上 3.echo '$?' 显示的是$? 4.echo \$? 显示的是$? 5.echo "\$?" 显示的是$? 大家可能已经看出 $符号在双引号中具有特殊意义 双引号对$符号不起作用 而单引号可以将特殊字符的的

  • Shell脚本中的位置变量参数(特殊字符)实例讲解

    $# : 传递到脚本的参数个数 $* : 以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过 9个 $$ : 脚本运行的当前进程 ID号 $! : 后台运行的最后一个进程的进程 ID号 $@ : 与$#相同,但是使用时加引号,并在引号中返回每个参数 $- : 显示shell使用的当前选项,与 set命令功能相同 $? : 显示最后命令的退出状态. 0表示没有错误,其他任何值表明有错误. 复制代码 代码如下: #!/bin/sh #param.sh # $0:文件完整路径名

  • Shell命令行中特殊字符与其转义详解(去除特殊含义)

    特殊符号及其转义 大家都知道在一个shell命令是由命令名和它的参数组成的, 比如 cat testfile, 其中cat是命令名, testfile是参数. shell将参数testfile传递给cat命令. 但是, 如果参数中含有特殊字符, 比如说*, *我们知道,是表示任意多个(包括0个)任意字符. 那么shell的工作方式是,它会对这些特殊字符进行预先处理, 然后再将处理的结果传给那个命令. 比如说,如果你的当前目录有file, file1, file2 三个文件, 那么当你执行cat

  • shell脚本中一些特殊符号

    在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ 'string'| ! $ ${} $? $$ $* \"string\"* ** ? : ^ $# $@ `command`{} [] [[]] () (()) || &~ ~+ ~- & \\<...\\> + - %= == != # 井号 (comments) 这几乎是个满场都有的符号,除了先前已经提过的\"第一行\" #!/bin/bash 井号也常出现在一

  • shell脚本中28个特殊字符的作用简明总结

    1. # 注释作用, #! 除外此外, 在参数替换 echo ${PATH#*:} 这里不表示注释, 数制转换, 不表示注释 echo $((2#101011)) 2. ; 命令行分隔符, 可以在一行中写多个命令. echo hello; echo there 3. ;; 终止 case 选项 复制代码 代码如下: case "$variable" inabc) echo "\$variable = abc";;xyz) echo "\$variable

  • linux shell中的比较符号与特殊符号介绍

    shell字符串比较.判断是否为数字 二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别. 整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如:if [ "$a" -ne "$b" ] -gt 大于,如:if [ "$a" -gt "$b" ] -ge 大于等于,如:if [ "$a" -ge "$b"

  • shell中冒号的特殊用法分享

    : ${VAR:=DEFAULT} 当变量VAR没有声明或者为NULL时,将VAR设置为默认值DEFAULT.如果不在前面加上:命令,那么就会把${VAR:=DEFAULT}本身当做一个命令来执行,报错是肯定的.

  • shell中的for循环用法详解

    for 命令: for i in 的各种用法 : for i in "file1" "file2" "file3" for i in /boot/* for i in /etc/*.conf for i in $(seq -w 10) -->等宽的01-10 for i in {1-10} for i in $( ls ) for I in $(< file) for i in "$@" -->取所有位置参数

  • shell中set指令的用法详解

    语法 set [-可选参数] [-o 选项] 功能说明 set 指令可根据不同的需求来设置当前所使用 shell 的执行方式,同时也可以用来设置或显示 shell 变量的值.当指定某个单一的选项时将设置 shell 的常用特性,如果在选项后使用 -o 参数将打开特殊特性,若是 +o 将关闭相应的特殊特性.而不带任何参数的 set 指令将显示当前 shell 中的全部变量,且总是返回 true,除非遇到非法的选项. 参数说明 可选参数及其说明如下: 参数 说明 -a 标示已修改的变量,以供输出至环

  • Golang中反射的常见用法分享

    目录 根据类型做不同处理 标准库 json 中的示例 基本类型的反射 数组类型的反射 chan 反射 map 反射 迭代反射 map 对象 slice 反射 string 反射 interface/Pointer 反射 结构体的反射 遍历结构体字段 根据名称或索引获取结构体字段 修改结构体字段 结构体方法调用 是否实现接口 结构体的 tag 修改结构体未导字段 方法的反射 入参和返回值 通过反射调用方法 总结 在之前的两篇文章 <深入理解 go reflect - 反射基本原理>.<深入

  • Linux shell中的test命令用法教程

    test命令 test命令是shell环境中测试条件表达式的实用工具,下面来看看test命令的用法介绍: 语法 test(选项) 选项 -b<文件>:如果文件为一个块特殊文件,则为真: -c<文件>:如果文件为一个字符特殊文件,则为真: -d<文件>:如果文件为一个目录,则为真: -e<文件>:如果文件存在,则为真: -f<文件>:如果文件为一个普通文件,则为真: -g<文件>:如果设置了文件的SGID位,则为真: -G<文件&

  • Shell中实现字符串反转方法分享

    在做关键词清洗过程中,需要将一类不符合某个字结尾的词过滤出来,思路是把这一批词按最后一个字排序,于是想到了先把这些词反转一下,如把12345转为54321,好像以前在夜息的文章里看过用shell可以实现,就百度了一下,找到几个可行的解决方法,现记录一下. shell实现字符串反转,一句命令搞定! 复制代码 代码如下: cat keywords.txt|while read line;do echo $line|rev;done 命令的: 复制代码 代码如下: echo 12345|rev 543

  • python list中append()与extend()用法分享

    1. 列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型. 2.  append() 方法向列表的尾部添加一个新的元素.只接受一个参数.3.  extend()方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中. append()用法示例: >>> mylist = [1,2,0,'abc'] >>> mylist [1, 2, 0, 'abc'] >>> mylist.append(4) >>> myl

  • PHP中的递归正则表达式用法分享

    什么时候会用到递归正则表达式呢? 当然是待匹配的字串中递归地出现某种模式时(貌似废话). 最经典的例子, 就是递归正则处理嵌套括号的问题了. 例子如下. 假设你的文本中包含了正确配对的嵌套括号. 括号的深度可以是无限层. 你想捕获这样的括号组. 复制代码 代码如下: <?php $string = "some text (a(b(c)d)e) more text"; if(preg_match("/\(([^()]+|(?R))*\)/",$string,$m

  • Shell中的for循环总结

    关于shell中的for循环用法很多,一直想总结一下,今天网上看到上一篇关于for循环用法的总结,感觉很全面,所以就转过来研究研究,嘿嘿... 复制代码 代码如下: for((i=1;i<=10;i++));do echo $(expr $i \* 4);done 在shell中常用的是 for i in $(seq 10) 复制代码 代码如下: for i in `ls` for i in ${arr[@]} for i in $* ; do for File in /proc/sys/net

  • Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)

    让我们来看一个例子: import numpy as np x=np.array([[1,2,3],[5,6,7],[7,8,9]]) print(x) Out[64]: array([[1, 2, 3], [5, 6, 7], [7, 8, 9]]) 以上的结果我想大家应该没问题把,就是定义了一个np数组,关键在下面 print(x[:,::-1]) Out[65]: [[3 2 1] [7 6 5] [9 8 7]] 以上的代码实现了一种功能,就是将数组倒序排列了,每个维度上倒序,这段代码怎

随机推荐