Dan*_*and 7 variables bash awk substitution
我正在努力使用awk替换,由于某种原因,以下代码不能替代任何东西,它只是打印输出不变.谁能看到我在这里失踪的东西?任何帮助都会非常适合!(PS!$ DOCPATH和$ SITEPATH是shell变量,它们在我的awk设置中完美运行).
awk -v docpath="$DOCPATH" -v sitepath="$SITEPATH" '{ sub( /docpath/, sitepath ) } { print }'
Run Code Online (Sandbox Code Playgroud)
dev*_*ull 10
他说:
sub( /docpath/, sitepath )
Run Code Online (Sandbox Code Playgroud)
导致awk替换模式docpath,而不是变量docpath.
你需要说:
awk -v docpath="$DOCPATH" -v sitepath="$SITEPATH" '{sub(docpath, sitepath)}1' filename
Run Code Online (Sandbox Code Playgroud)