gpt4 book ai didi

linux - 解释 ${test##*.} 和 ${test%%.*} 是如何工作的?

转载 作者:太空狗 更新时间:2023-10-29 11:45:47 26 4
gpt4 key购买 nike

有没有好的方法来解释下面的工作原理?

~$ echo $test
en.to.tre
~$ echo ${test}
en.to.tre
~$ echo ${test%.*}
en.to
~$ echo ${test%%.*}
en
~$ echo ${test#*.}
to.tre
~$ echo ${test##*.}
tre

特别是我不明白为什么 .* 在从左/右移除/保留时必须交换。

最佳答案

.* 表示“以 . 开始的子字符串 ”; *. 表示“以 . 结尾的子串 ”。在第三行和第四行中,您从末尾删除了 starting with . 的最短/最长子字符串;在第五行和第六行中,从开头删除以 . 结尾的最短/最长子字符串 ending

#% 等之后的字符串被解释为 globbing 模式(如文件名),而不是正则表达式,因此 代表自己。

关于linux - 解释 ${test##*.} 和 ${test%%.*} 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16790345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com