sed + 如何删除特定字符后的最后一个字符串

yae*_*ael 2 linux solaris ksh sed

如何删除“。”之后的最后一个字符串 字符包括“。” 性格本身

Linux/Solaris操作系统下可以用sed实现

更改前的 IP 地址示例

      192.9.200.1     ( need to remove the .1 )
Run Code Online (Sandbox Code Playgroud)

预期成绩

      192.9.200
Run Code Online (Sandbox Code Playgroud)

另一个例子

      100.2.2.101FFF
Run Code Online (Sandbox Code Playgroud)

预期成绩

      100.2.2
Run Code Online (Sandbox Code Playgroud)

Dan*_*ner 8

为什么是sed?如何使用 bash 参数扩展进行操作?

var="192.168.200.1"
echo ${var%.*}

192.168.200
Run Code Online (Sandbox Code Playgroud)


小智 7

也许用 cut 而不是 sed ?

echo "10.10.10.5" | cut -d. -f-3
Run Code Online (Sandbox Code Playgroud)

如果它必须被 sed

echo "10.10.10.5fsdfdsf" | sed -e 's/\.[^\.]*$//'
Run Code Online (Sandbox Code Playgroud)