gpt4 book ai didi

bash - 用bash脚本中变量中的其他文本替换子字符串

转载 作者:行者123 更新时间:2023-12-04 18:57:31 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Replace one substring for another string in shell script

(11 个回答)


4年前关闭。




我一直在尝试编写一个 bash 脚本。它的一部分应该用任何内容替换字符串的一部分。

这就是我想要做的

$dbname=$1
$dbNameActual="${$dbname/.sql/}"

date
echo $dbNameActual

我从堆栈中尝试了一些建议。但一无所获。我尝试添加 sed,但这似乎不起作用。

我的想法是我有一个脚本,它接受 db导入文件名 ,比如说 db250317.sql和输出 db250317 .

我正在运行 Ubuntu 16.04 LTS .

最佳答案

你不放$表达式中出现两次,并且您没有输入 $在您分配的变量之前(这不是 PHP 或 Perl)。它应该是:

dbNameActual="${dbname/.sql/}"

另外,如果你要删除的东西总是在最后,你可以使用 %删除它:
dbNameActual="${dbname%.sql}"

还记得在以后使用变量时引用它,以防文件名包含空格。您几乎应该总是引用变量,除非您有特定的理由不这样做。

关于bash - 用bash脚本中变量中的其他文本替换子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45685346/

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