我是 bash shell 脚本的新手,如果能提供可以执行此任务的脚本的建议,我将不胜感激。我有一个包含很多行的文件(list.cqt)。每行都有一个以“/”分隔的字段列表,格式如下:/Field1/Field2/Field3/Field4/Field5/Field6/Field7/Field8/Field9/Field10
例如list.cqt中的内容为:
/F11/F12/F13/F14/F15/F16/F17/F18/F19/F110
/F21/F22/F23/F24/F25/F26/F27/F28/F29/F210
...
/Fx1/Fx2/Fx3/Fx4/Fx5/Fx6/Fx7/Fx8/Fx9/Fx10
(我修改了每个字段内的名称只是为了简化问题。每行中只有字段数是恒定的。每个字段中的内容可以是任何内容 - 数字、字符等)
我需要编写一个脚本来通过从 list.cqt 中读取每一行来执行以下命令:
command arg1 arg2 arg3 arg4 *arg5* arg6 arg7 arg8 arg9 arg10
读取的每一行只有arg4、arg5、arg7和arg10变化。其余一切都保持不变。
arg4是 list.cqt 中该行中的 Field4
arg5是 list.cqt 中该行中的 Field6第一个命令
arg7基本上以 -1000 开头,并且以 100 为增量变化。因此,对于第二个命令,第二个命令将是 -900 ,依此类推,0 表示第 11 个命令,100 表示第 12 个命令,200 表示第 13 个命令等
。arg10与arg7的绝对值相同,但符号相反。因此,如果arg7为 -600,则 arg10为 600。如果arg7为 400,则 arg10是-400。
例如,从上面文件示例中的 list.cqt 中读取前两行,命令将是:
command arg1 arg2 arg3 F14 F16 arg6 -1000 arg8 arg9 1000
command arg1 arg2 arg3 F24 F26 arg6 -900 arg8 arg9 900
谢谢!