我有一个包含 ( ) 列的 test.txt 文件Serialnumber,value
。
测试.txt:
"SEQ_IN_AMT.NEXTVAL",123123
"SEQ_IN_AMT.NEXTVAL",123114
这SEQ_IN_AMT
是在 Oracle 上创建的序列名称。现在,当我通过sqlldr
unix将该文件加载到 Oracle 时db.i
,需要该序列的值,以便我将在以下过程中使用该序列值:
P_UPDATE_VALUE (SEQ_IN_AMT.NEXTVAL,value)
答案1
要更改文件的格式test.txt
,请使用awk
:
awk -F'[",]' '{printf "P_UPDATE_VALUE (%s,%s)\n",$2,$4}' test.txt
印刷:
P_UPDATE_VALUE (SEQ_IN_AMT.NEXTVAL,123123)
P_UPDATE_VALUE (SEQ_IN_AMT.NEXTVAL,123114)
-F
定义在这种情况下awk
应使用"
and 的分隔符。,
printf
根据需要格式化输出$2
和$4
是两个字段,基于分隔符