关于shell脚本中#的几种用法:
1.#! 文件头中指定命令解释器;
2.# 作为注释符;
3.$# 、 KaTeX parse error: Expected '}', got '#' at position 2: {#̲@} 、{#*}命令行参数的个数;
4.KaTeX parse error: Expected '}', got '#' at position 2: {#̲array[@]}表示数组的长…#a 表示变量a的长度(包括空格);
5.${2#10011}表示2进制数值,该值表示十进制的19
6.剥去传递来的参数中的某个pattern的字符 gerenal format is : ${1#abc} 如果此时命令行参数为sh test.sh abcdef ,echo ${1#abcdef} //def; (只能剥去一个符合条件的串);
7. 剥去符合条件的最大个数的串
shopt -s extglog
echo ${1##+(abc)}
shopt -u extglog
比如输入 sh test.sh abcabcdef //def
example:
#! /bin/bash
#this is an example and this sentence is comment.
if[ KaTeX parse error: Expected 'EOF', got '#' at position 1: #̲ -ne 1 ] then …a"
echo “${1#abc}”
string_getHead ()
{
shopt -s extglog
local var="${1##+(abc)}"
echo
v
a
r
s
h
o
p
t
−
u
e
x
t
g
l
o
g
s
t
r
i
n
g
g
e
t
H
e
a
d
=
var shopt -u extglog _string_getHead=
varshopt−uextglogstringgetHead={var:abc}
}
string_getHead()
————————————————
版权声明:本文为CSDN博主「guicl0219」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/guicl0219/article/details/7097051