我的脚本采用这样的输入文件
user:tag:count
它获取用户,在页面上搜索用户,然后输出指向用户的 URL。完成此操作后,输入文件应更改为
user:tag:count:URL
该脚本是一个 while 循环,从 i=line1 开始,到最后一行结束。因此循环正在处理的行存储在 $i 中,而它获得的 URL 存储在 $url 中。
通常我会使用 sed 来实现这一点,但如果变量包含“/”,我会遇到问题。我用 awk 尝试过:
awk -v iv="$i" 'NR == iv' input | awk -v var="$count" '{print $0 ":"var}'
它在右行添加了 URL,但 ofc 它不会帮助以我想要的方式编辑输入文件。
有什么方法可以将 2 个 awk 合并为一个,以便我可以编辑该文件吗?
答案1
sed
只需与非分隔符一起使用即可/
。例如:
sed 's|foo|bar|'
但是,是的,您也可以连接两个 awk 命令:
awk -v iv="$i" -v var="$count" 'NR == iv{print $0 ":"var}'