[英]replacing lines of a text file with text of another file using sed or awk
[英]How to attach text using AWK
对不起,如果我在搜寻SO时可能错过了这一点。 我有一个具有以下结构的文本文件
AAAA21346A
AAAA21346A
AAAA21346A
AAAA21346A
.
.
.
直到超过50万记录(一半记录)。
我想使用awk
在每行的前面附加^ N ^ 1。 如何做呢?
更新:
我的输出必须如下所示:
AAAA21346A^N^1
AAAA21346A^N^1
AAAA21346A^N^1
AAAA21346A^N^1
直到EOF。 每条记录后都必须有一个换行符。
** 更多说明 * ** *
我正在使用db2和linux,因此我想到了Awk。 我想做的是,我需要使用db2中的“ load from”命令并使用^作为分隔符,将数据插入3列的表中。 但是由于文本文件只包含一列,我想附加^ N ^ 1使其变成3列。 我希望你们现在都明白。
您想要的东西看起来很简单:
awk '{print $0 "^N^1"}' data_file
添加线程ID的唯一问题是确定执行此操作的算法。 例如,交替也很容易:
awk '{printf "%s^N^%d\n", $0, (NF % 2) + 1}' data_file
以下是使用AWK的几种其他方法:
awk 'BEGIN { ORS = "^N^1\n"} 1' inputfile
或者,更明确地说:
awk 'BEGIN { ORS = "^N^1\n"} {print}' inputfile
要么
awk 'BEGIN { OFS = "^"} {$2 = "N"; $3 = 1}1' inputfile
要么
awk 'BEGIN { OFS = "^"} {$2 = "N"; $3 = 1; print}' inputfile
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.