我有一条看起来像下面的一行:
input_param { shape: dim: 50 dim: 3 dim: 227 dim: 277} }
我想用sed命令覆盖50,例如用" 1":
sed -i -e 's/dim: */dim: 1/' filename.txt
然而,之后的界限如下:
input_param { shape: dim: 150 dim: 3 dim: 227 dim: 277} }
谁能告诉我哪里出错了?
答案 0 :(得分:1)
使用此5 * 4 * 3 * 2 * 1
:
sed
您使用sed 's/dim: [0-9]\+/dim: 1/' file
表示匹配零个或多个前一个字符。所以,它之后没有检查数字。我使用*
表示一个或多个前面的字符。