我有一个包含以下行的文件:

  <parameter name="PortMappingEnabled" access="readWrite" type="xsd:boolean"></parameter>
  <parameter name="PortMappingLeaseDuration" access="readWrite" activeNotify="canDeny" type="xsd:unsignedInt"></parameter>
  <parameter name="RemoteHost" access="readWrite"></parameter>
  <parameter name="ExternalPort" access="readWrite" type="xsd:unsignedInt"></parameter>
  <parameter name="ExternalPortEndRange" access="readWrite" type="xsd:unsignedInt"></parameter>
  <parameter name="InternalPort" access="readWrite" type="xsd:unsignedInt"></parameter>
  <parameter name="PortMappingProtocol" access="readWrite"></parameter>
  <parameter name="InternalClient" access="readWrite"></parameter>
  <parameter name="PortMappingDescription" access="readWrite"></parameter>

我想在此文件上执行命令,仅提取以下输出中显示的参数名称:

$sedcommand file.txt
PortMappingEnabled
PortMappingLeaseDuration
RemoteHost
ExternalPort
ExternalPortEndRange
InternalPort
PortMappingProtocol
InternalClient
PortMappingDescription

这是什么命令?

推荐答案

你想要awk.

这将是一个快速而肮脏的黑客:

awk -F "\"" '{print $2}' /tmp/file.txt

PortMappingEnabled
PortMappingLeaseDuration
RemoteHost
ExternalPort
ExternalPortEndRange
InternalPort
PortMappingProtocol
InternalClient
PortMappingDescription

Linux相关问答推荐

IntelliJ(PyCharm)不再识别Linux中的AltGr快捷键

如果在两种模式之间找到文本,则使用sed删除它们之间的所有行

Bash shell 脚本未通过 TRUE 条件

如何使用netcat为DPDK实例提供输入?

所有进程的Linux环境变量

Windows WSL 以上 Linux 中的 AF_UNIX 套接字无法绑定到 /mnt 文件:错误 95,不支持操作

如何在makefile中包含静态库

使用带有 gnome-keyring 的 Git 凭证助手作为 Sudo 时出错

如何有效地使用 grep?

如何优雅地退出 X11 事件循环?

什么是最有效的不区分大小写的 grep 用法?

有没有办法在整个项目代码中的某个日期之后找出更改的文件?

我想为 Linux 内核做贡献

如何在不重新打印的情况下更新终端中的打印消息

如何列出附加到Linux中共享内存段的进程?

如何从 linux 的命令行将 Sublime Text 2 文件打开到选项卡,而不是新窗口

polkitd未注册身份验证代理的解释

如何在第一个错误时停止 xargs?

bash shell 脚本函数定义(如f () {})中使用的括号是什么?它与使用function关键字不同吗?

Linux如何确定下一个PID?