%解释
在 Bash 中,%
符号通常表示删除字符串的后缀。具体来说,${var%pattern}
表示从变量 $var
的结尾删除匹配模式 pattern
的子串,并返回删除后的字符串。
例如,如果 $namebin
的值为 file.bin
,那么 ${namebin%.bin}
的结果就是 file
,因为它删除了 $namebin
变量结尾的 .bin
后缀。
需要注意的是,%
符号只会删除一个匹配模式,如果变量结尾有多个匹配模式,只会删除最后一个匹配模式。另外,%
符号还可以与 %%
符号连用,表示删除最长匹配模式的后缀。
#解释
在 Bash 中,#
符号通常表示删除字符串的前缀。具体来说,${var#pattern}
表示从变量 $var
的开头删除匹配模式 pattern
的子串,并返回删除后的字符串。
例如,如果 $srcbin
的值为 /path/to/file.bin
,那么 ${srcbin#*/}
的结果就是 path/to/file.bin
,因为它删除了 $srcbin
变量开头的 /
及其之前的所有字符。
需要注意的是,#
符号只会删除一个匹配模式,如果变量开头有多个匹配模式,只会删除第一个匹配模式。另外,#
符号还可以与 ##
符号连用,表示删除最长匹配模式的前缀。
$解释
在 Bash 中,$
符号通常表示变量,用于引用变量的值。例如,$name
表示变量 name
的值。
在某些情况下,为了避免变量名与其他字符混淆,可以使用 $
符号来界定变量名的边界。例如,$namebin
和 ${namebin}
都表示变量 namebin
的值,但是在 $namebin
中,$
符号界定了变量名的边界,使得 Bash 可以正确解释变量名。另外,${namebin%.bin}
中的 $
符号也是用来界定变量名的边界,表示 ${namebin}
和 .bin
是两个独立的字符串,而不是一个字符串。文章来源:https://www.toymoban.com/news/detail-429296.html
需要注意的是,在某些情况下,$
符号也可以用于转义特殊字符,例如 $'\n'
表示换行符,$'\t'
表示制表符等。文章来源地址https://www.toymoban.com/news/detail-429296.html
到了这里,关于Shell语法解释特殊符号 # %的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!