我有一个verilog文件,其中定义了多个包含各种输入和输出变量的模块。 我需要使用sed脚本找出最后出现的这种变量(输入/输出)。 我运行以下命令
地址= sed -n '100,200{/output/=};100,200{/input/=}' file.txt
它给我的输出为102 103 104 105 106
虽然我只想要106。
请以某种方式建议我。
答案 0 :(得分:1)
这可能对您有用:
sed '100,200{/input\|output/=};d' file.txt | sed '$!d'
或者也许如你所愿:
address=$(sed '100,200{/input\|output/=};d' file.txt | sed '$!d')
答案 1 :(得分:0)
sed -n '100,200p' foo.txt | awk '/input/{s=NR} /output/{s=NR} END{print s}'
答案 2 :(得分:0)
你可以这样做:
nl -ba < file.txt | sed -n '100,200{/output\|input/h};$x;$p'