相关疑难解决方法(0)

如何逐行合并两个文件

我有两个文件(file1.txtfile2.txt),文件只是示例.

如何合并这两个文件,以便创建文件 - merge_files.txt作为示例3

我现在写的是ksh脚本,所以可以用ksh,awk,sed,perl one liner等完成合并

背景 - 为什么我需要合并文件:我的目标是将OLD文件(存在于第一个字段中)重命名为NEW文件(存在于第二个字段中),

例1

more file1.txt

/etc/port1-192.9.200.1-255.555.255.0
/etc/port2-192.9.200.1-255.555.255.0
/etc/port3-192.9.200.1-255.555.255.0
/etc/port4-192.9.200.1-255.555.255.0
/etc/port5-192.9.200.1-255.555.255.0
.
.
.
.
Run Code Online (Sandbox Code Playgroud)

例题

more file2.txt

/etc/port1-192.90.2.1-255.555.0.0
/etc/port2-192.90.2.1-255.555.0.0
/etc/port3-192.90.2.1-255.555.0.0
/etc/port4-192.90.2.1-255.555.0.0
/etc/port5-192.90.2.1-255.555.0.0
.
.
.
.
Run Code Online (Sandbox Code Playgroud)

示例3

 more merge_files.txt



 /etc/port1-192.9.200.1-255.555.255.0  /etc/port1-192.90.2.1-255.555.0.0
 /etc/port2-192.9.200.1-255.555.255.0  /etc/port2-192.90.2.1-255.555.0.0
 /etc/port3-192.9.200.1-255.555.255.0  /etc/port3-192.90.2.1-255.555.0.0
 /etc/port4-192.9.200.1-255.555.255.0  /etc/port4-192.90.2.1-255.555.0.0
 /etc/port5-192.9.200.1-255.555.255.0  /etc/port5-192.90.2.1-255.555.0.0
 .
 .
 .
 .
 .
Run Code Online (Sandbox Code Playgroud)

example4(merge_files.txt结构)

 first field                           second field

 OLD file                              NEW file
Run Code Online (Sandbox Code Playgroud)

linux perl awk ksh sed

64
推荐指数
1
解决办法
9万
查看次数

标签 统计

awk ×1

ksh ×1

linux ×1

perl ×1

sed ×1