我使用sed
從模板文件創建文件。我無法弄清楚,使用man sed
,爲什麼它不會更改所有匹配的字符串。sed只替代首次出現的字符串
如果我的文件(template_file.txt)包含:
#!/bin/sh
#
# /etc/init.d/%SCRIPT_NAME% - Startup script for play %SCRIPT_NAME% engine
#
### BEGIN INIT INFO
[...]
EOF
使用:
sed -e "s;%SCRIPT_NAME%;script_test_name;" template_file.txt > script_test_name
主要生產(script_test_name):
#!/bin/sh
#
# /etc/init.d/script_test_name - Startup script for play %SCRIPT_NAME% engine
#
### BEGIN INIT INFO
[...]
EOF
我看到了線,有2個乘以要替換的字符串,只替換第一個字符串。
你能給我一個提示如何解決它嗎?