【问题标题】:String manipulation in Mac terminalMac终端中的字符串操作
【发布时间】:2019-05-09 07:28:56
【问题描述】:

你知道为什么这不起作用吗?

注意我在 Mac 终端上使用 ~/.zshrc

FOO="MACOS"
FOO=${FOO//$OS/}
echo $FOO

回声:

MACOS

我希望它回显MAC

【问题讨论】:

    标签: bash oh-my-zsh


    【解决方案1】:

    尝试将FOO=${FOO//$OS/} 更改为FOO=${FOO//OS/},然后它应该会飞。为什么因为$ 我们在我们想要打印任何变量的值时使用,但在这种情况下它不是变量,它是我们提到的字符串(在 BASH 上测试)。

    如果您想使用$(我们可以通过创建另一个值为字符串OS 的变量来使用它)然后尝试以下操作。

    os="OS"            ##Creating a variable named os with string value OS.
    FOO="MACOS"        ##Creating variable FOO with value of string MACOS.
    FOO=${FOO//$os/}   ##Using variable expansion of BASH to remove variable `os` value from variable `FOO` here and saving it into `FOO` variable itself.
    echo "$FOO"        ##Printing value of variable `$FOO` here.
    MAC
    

    【讨论】:

      猜你喜欢
      • 2021-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 2019-08-12
      • 2011-05-12
      相关资源
      最近更新 更多