我试图找出如何通过sed
来替换第一个匹配项(搜索/替换)的匹配项。我想要它逐行(我认为这是sed
的默认值)。替换行中的第一个匹配项
这里是我的数据集:
(4320, 38, '101.1.168.192.in-addr.arpa', 'PTR', 'test1.example.com', 3600, NULL, 1377614683),
(4321, 38, '102.1.168.192.in-addr.arpa', 'PTR', 'test2.example.com', 3600, NULL, 1377614683),
(4322, 38, '103.1.168.192.in-addr.arpa', 'PTR', 'test3.example.com', 3600, NULL, 1377614683),
(4323, 38, '104.1.168.192.in-addr.arpa', 'PTR', 'test4.example.com', 3600, NULL, 1377614683),
这仅仅是一个剪断–这是一个巨大的名单。我想为每一行取出第一个数字,具体查找([0-9],
与(,
。这样我就可以默认分配这个SQL语句的值,因为我将把这个数据集导入到一个表中(这可能与auto_increment
值有冲突)。
下面是我想它看起来做的时候像:
(, 38, '101.1.168.192.in-addr.arpa', 'PTR', 'test1.example.com', 3600, NULL, 1377614683),
(, 38, '102.1.168.192.in-addr.arpa', 'PTR', 'test2.example.com', 3600, NULL, 1377614683),
(, 38, '103.1.168.192.in-addr.arpa', 'PTR', 'test3.example.com', 3600, NULL, 1377614683),
(, 38, '104.1.168.192.in-addr.arpa', 'PTR', 'test4.example.com', 3600, NULL, 1377614683)
我相信会的工作。我已经尝试了一些sed
命令,但它们似乎都将整个比赛都删除直到线的末端(因为我匹配我匹配的内容,它基本上删除了每个[0-9].*,
)。
请发表你的命令,你试过 – Teja