如何向来自powershell输出的bash变量追加



我正在使用WSL,需要获取计算机的IP地址并附加":0.0";。我执行一个powershell命令来获取IP地址(下面是随机IP(,并将其分配给一个变量。附加到该变量会覆盖它。

> IP=$(powershell.exe "(Test-Connection -ComputerName (hostname) -Count 1).IPV4Address.IPAddressToString")
> echo $IP
127.27.15.1
> echo "${IP}:0.0"
:0.027.15.1

如何将其添加到末尾,而不是替换前4个字符?

从值中删除Windows行结尾:

echo "${IP%$'r'}:0.0"

命令替换$(...)删除最后的n,但不删除它之前的r

参数扩展${var%pattern}从var值的末尾移除模式。$'...'启用ANSI C转义。

最新更新