Я знал несколько операций, которые мы можем сделать с переменными в оболочке, например:
1) Операция "#" & "##"
с помощью $ {var # pattern} мы удаляем «pattern» из заголовка $ {var}. «*» может использоваться в шаблоне, чтобы соответствовать всему. И разница между "#" и "##" заключается в том, что "##" удалит самую длинную подстроку соответствия, а "#" удалит самую короткую. Например,
var=brbread
${var##*br} // ead
${var#*br} // bread
2) Операция "%" & "%%"
с помощью $ {var% pattern} мы удаляем «pattern» в конце $ {var}. Конечно, «%%» означает самое длинное совпадение, а «%» означает самое короткое. Например,
var=eadbreadbread
${var%%*br} // eadbreadbread
${var%%br*} // ead
${var%br*} // eadbread
3) "/" операция
с $ {var / haha / heihei}, мы заменяем «haha» в $ var на «heihei». Например,
var=ihahai
${var/haha/heihei/} / iheiheii
Мне просто любопытно, можем ли мы сделать больше операций с переменными, кроме указанных выше?
Спасибо.