【发布时间】:2021-11-19 09:14:43
【问题描述】:
我想在某一行插入一个字符串,我知道行号。
例如
#Aa_version = Aa/45.21-a32_1
#Aa_version = Aa/47.21-a33_1
Aa_version = Aa/45.27-a57_2 ->I can get this line number n
我想在第 n+1 行插入一行 Aa/49.27-a54_1
然后输入Aa_version = Aa/45.27-a57_2 -> #Aa_version = Aa/45.27-a57_2
输出是这样的
#Aa_version = Aa/45.21-a32_1
#Aa_version = Aa/47.21-a33_1
#Aa_version = Aa/45.27-a57_2
Aa_version = Aa/49.27-a54_1
我的代码是
set Aa ""
set fp [open $file "r+"]
set lines [split [read $fp] \n]
set idx [lsearch -regexp $lines {^Aa_version} ]
regexp {Aa(.+)} [lindex $lines $idx] Aa_version
set old_version "#$Aa_version"
set newAa [gets stdin]
set new_version "Aa_version =$newAa "
puts $old_version ->replace $Aa_version
puts $new_version
close $fp
我怎样才能把它们放在正确的行 谢谢
【问题讨论】: