无法在Bash中使用变量分配另一个变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法在Bash中使用变量分配另一个变量相关的知识,希望对你有一定的参考价值。
我尝试分配我的bash变量,当我回显它时,它可以正常工作。但是,一旦我使用该变量来分配另一个变量,它就会给出一个错误,该命令不存在。
dbFileName=hello123.mv.*
dbFile=$($dbFileName | sed -e 's|'.mv.*'|''|')
echo "$dbFile"
我想更改存储在一个变量中的字符串,并从末尾删除mv。*。
这会显示“ hello123.mv。*:找不到命令”的错误]
答案
您可以将参数扩展与%
一起使用,这将删除字符串末尾的字符,或者#
将从字符串的开头删除字符。如果您只使用其中一个字符,则最小的匹配字符串将被删除。如果将字符加倍,则最长的字符将被删除。
dbFileName="hello123.mv.whateverhere"
echo ${dbFileName%.mv*} # hello123
dbFile=${dbFileName%.mv*}
echo ${dbFile} # hello123
以上是关于无法在Bash中使用变量分配另一个变量的主要内容,如果未能解决你的问题,请参考以下文章
bash 脚本在变量中使用剪切命令并将结果存储在另一个变量中