我有一个脚本可以更改文本文件的各个元素 - 这是一个游戏设置,我需要根据玩家选择的级别更改内容。基本上它需要一个文件,做一些整理,然后为每个级别生成两个启动文件。
这段代码工作正常但后续行没有完成,我看到有关“sed:file scr line 4:unterminated address regex”的消息: -
lines=`cat -n temp1 | grep TeamID= | grep -v TeamID=0 | awk '{print $1}'`
# Nothing to add for Noble / Prince
cp temp1 $noble_game_huts
echo "Creating Monarch"
# Monarch - adding TECH_ARCHERY
rm -f scr
for i in `echo $lines`
do
echo $i"a\\" >> scr
echo "\tTech=TECH_ARCHERY
">> scr
done
sed -f scr temp1 > temp2
sed '0,/Handicap=HANDICAP_NOBLE/s/Handicap=HANDICAP_NOBLE/Handicap=HANDICAP_MONARCH/' temp2 > "$monarch_game_huts"
我搜索了谷歌和这个网站,但是虽然有很多点击似乎没有任何帮助。
使用bash在Linux Mint 16上运行此脚本。
感谢。
艾伦
答案 0 :(得分:0)
提取的行似乎有一个与团队相对应的行号,每行都在i
中读取,然后您想根据此行号添加文本。
你需要在行动之前留出一个空间,所以我建议
echo "${i} a\\\n\tTech=TECH_ARCHERY\n" >> scr
也(不是这个问题)
lines=`sed -n '/TeamID=[^0]/ =' temp1`