有关shell中冒号的特殊用法】的更多相关文章

有关shell中冒号的特殊用法,供朋友们参考. : ${VAR:=DEFAULT} 当变量VAR没有声明或者为NULL时,将VAR设置为默认值DEFAULT.如果不在前面加上:命令,那么就会把${VAR:=DEFAULT}本身当做一个命令来执行,报错是肯定的. 空命令[冒号]. 这个命令意思是空操作(即什么操作也不做). 它一般被认为是和shell的内建命令true是一样的.冒号":" 命令是Bash自身内建的, 它的退出状态码是真(即0). ${VAR:=DEFAULT} 变量替换…
1. shell中字典的用法示例, 数组用法同字典 2. 以上使用sell配合字典实现的功能, 使用awk能轻松搞定, 如下: awk '{print $2}' file.txt | sort | uniq -c     # -c表示统计每个唯一字符的个数…
Linux Shell中有三种引号,分别为双引号(" ").单引号(' ')以及反引号(` `). 其中双引号对字符串中出现的$.''.`和\进行替换:单引号不进行替换,将字符串中所有字符作为普通字符输出,而反引号中字符串作为shell命令执行,并返回执行结果.具体含义如下: 双引号(" "):在双引号中,除了$, '', `和\以外所有的字符都解释成字符本身. 单引号(' '):在单引号中所有的字符包括特殊字符($,'',`和\)都将解释成字符本身而成为普通字符.…
介绍下Shell中的${}.##和%%使用范例,本文给出了不同情况下得到的结果.假设定义了一个变量为:代码如下:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 / 及其左边的字符串:my.file.txt${file#*.}:删掉第一个 . 及其左边的字符串:file.txt${file##*.}:删…
介绍下Shell中的${}.##和%%使用范例,本文给出了不同情况下得到的结果.假设定义了一个变量为:代码如下:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 / 及其左边的字符串:my.file.txt${file#*.}:删掉第一个 . 及其左边的字符串:file.txt${file##*.}:删…
linux中有三种标准输入输出,分别是 STDIN,STDOUT,STDERR,对应的数字是 0,1,2. STDIN 是标准输入,默认从键盘读取信息: STDOUT 是标准输出,默认将输出结果输出至终端,也就是显示器之类的东西: STDERR 是标准的错误信息,默认也会显示在终端上. 由于STDOUT与STDERR都会默认显示在终端上,为了区分二者的信息,就有了编号的0,1,2的定义,用1表示STDOUT,2表示STDERR. 下面举例说明: 以普通用户登陆(Cent OS 7),执行 fin…
我们知道,在Linux系统中,冒号(:)常用来做路径的分隔符(PATH),数据字段的分隔符(/etc/passwd)等.其实,冒号(:)在Bash中也是一个内建命令,它啥也不做,是个空命令.只起到占一个位置的作用,但有时候确实需要它.当然,它也有它的用途的,否则没必要存在.在·Linux的帮助页中说它除了参数扩展和重定向之外不产生任何作用. man : No effect; the command does nothing beyond expanding arguments and perfo…
for i in “file1” “file2” “file3”for i in /boot/*for i in /etc/*.conffor i in $(seq -w 10) –>等宽的01-10for i in {1..10}for i in $( ls )for I in $(< file)for i in “$@” –>取所有位置参数,可简写为for i 注意:bash shell支持C式for循环 #!/bin/bash j=$ ; i<=j; i++)) do tou…
一.单小括号()1.将某个命令的返回值作为某个变量的值进行传递 #!/bin/bash USER=$(whoami) echo $USER [root@jump ~]# for i in $(seq 0 4);do echo $i;done 0 1 2 3 4 2.用于初始化数组 array=(1 2 3 4) 二.双小括号(())1.整数运算(不支持浮点型) [root@jump ~]# echo $((1+1)) 2 2.进制转换 16进制转10进制 [root@jump ~]# echo…
打印输出时,可能需要指定字段间的空格数,从而把列排整齐.在print函数中使用制表符并不能保证得到想要的输出,因此,可以用printf函数来格式化特别的输出. printf函数返回一个带格式的字符串给标准输出,如同C语言中的printf语句一样.printf语句包括一个加引号的控制串,控制串中可能嵌有若干格式说明和修饰符.控制串后面跟一个逗号,之后是一列由逗号分隔的表达式.printf函数根据控制串中的说明编排这些表达式的格式.与print函数不同的是, printf不会在行尾自动换行.因此,如…