sed或awk:如何从单独的文件中调用行地址?

sed或awk:如何从单独的文件中调用行地址?,第1张

概述我有’file1’和(比方说)100行.我想用sed或awk将第23,71和84行(例如)打印到’file2′.这3行代码位于单独的文件“list”中,每个数字都在一个单独的行中. 当我使用这些命令中的任何一个时,只打印第84行: for i in $(cat list); do sed -n "${i}p" file1 > file2; donefor i in $(cat list); d 我有’file1’和(比方说)100行.我想用sed或awk将第23,71和84行(例如)打印到’file2′.这3行代码位于单独的文件“List”中,每个数字都在一个单独的行中.

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

for i in $(cat List); do sed -n "${i}p" file1 > file2; donefor 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:如何从单独的文件中调用行地址?全部内容,希望文章能够帮你解决sed或awk:如何从单独的文件中调用行地址?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1028848.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存