只有在 shell 中匹配时才删除字符串的第一个和最后一个字符?

问题描述 投票:0回答:1

所以我基本上是从文件中读取第一行,并且我希望修剪第一个和最后一个字符,但前提是它们等于某个字符。我希望从字符串中删除“{”和“}”,但前提是它们分别是第一个和最后一个字符。

输入:
{Some_random_data_here,{此处有更多数据},测试}

输出:
Some_random_data,{这里有更多数据},测试

这是我正在使用的完整命令,它能够删除第一个命令,但不能删除最后一个命令。

$(head -n 1 "$filePath" | sed s/^{//;s/}$//)
bash shell scripting
1个回答
0
投票

我测试时你的解决方案有效,我只需要逃避

;

$ echo '{Some_random_data_here, {more data here}, test}' | sed s/^{//\;s/}$//
Some_random_data_here, {more data here}, test
© www.soinside.com 2019 - 2024. All rights reserved.