gpt4 book ai didi

sed 或 awk : how to call line addresses from separate file?

转载 作者:行者123 更新时间:2023-12-01 09:10:38 27 4
gpt4 key购买 nike

我有(比如说)100 行的'file1'。我想使用 sed 或 awk 将第 23、71 和 84 行(例如)打印到“file2”。这 3 个行号在一个单独的文件“列表”中,每个数字在一个单独的行上。

当我使用这些命令中的任何一个时,只打印第 84 行:

for i in $(cat list); do sed -n "${i}p" file1 > file2; done

for i in $(cat list); do awk 'NR==x {print}' x=$i file1 > file2; done

可以以这种方式使用 for 循环为 sed 或 awk 提供行地址吗?

最佳答案

这可能对你有用(GNU sed):

sed 's/.*/&p/' list | sed -nf - file1 >file2

使用 list建一个 sed脚本。

关于sed 或 awk : how to call line addresses from separate file?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17036938/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com