创建一个将bash中另一个文件的字符串和值连接在一起的文件

我需要创建一个包含许多行的FileToCreate.txt,其中包括即将出现的数字数据值

来自File1.txt

FiletoCreate.txt:

ncap2 -Oh -s'TOPOBATHY(v1,v2)=v3.'   --- first row

ncap2 -Oh -s'TOPOBATHY(168,361)=20.' --- scnd row

ncap2 -Oh -s'TOPOBATHY(169,366)=22.' ----third row

ncap2 -Oh -s'TOPOBATHY(Vn1,Vn2)=Vn3.'----last nth row

File1.txt:

v1  v2 v3

168 361 20

169 366 22

.    .   .

Vn1 Vn2  Vn3

我到目前为止尝试过:

ifile=file.txt

st='ncap2 -Oh -s 'TOPOBATHY('

st1=')='

st2='.''

line_no=$(wc -l < $ifile)

for row in 'seq 1 $line_no'; do


cat $ifile | awk -v st=$st -v st1=$st1 -v st2=$st2 


'{if (NR==$row) print(st $1 "," $2 st1 $3 st2 st3)}' >> $tmpdir/tmp

这是我最早的脚本之一,非常手工艺品,无法正常工作。租人

可以指导我吗?

预先感谢, 内拉

nn0930 回答:创建一个将bash中另一个文件的字符串和值连接在一起的文件

尝试查看以下脚本的工作原理:

#!/bin/bash

while read val1 val2 val3
do
  echo "ncap2 -Oh -s'TOPOBATHY($val1,$val2)=$val3.'"
done < file1.txt > FiletoCreate.txt

while循环逐行读取输入file1.txt,并将3个值存储在val1,val2和val3中(假设这些值之间用空格分隔)。

while的每次迭代过程中,echo会在其周围打印带有字符串的值。

整个while的输出都重定向到FiletoCreate.txt

本文链接:https://www.f2er.com/3030783.html

大家都在问