我正在创建将使用 /bin/sh 或 /bin/bash 脚本执行的可执行文件,
我有一个包含结构的文件,例如,配置文件中只有一个#start
和#end
标签,我想替换它们之间的文本那些标签,
...
#start
FirewallRuleSet global {
FirewallRule allow tcp to google.com
FirewallRule allow tcp to facebook.com
#more rules
}
#end
FirewallRuleSet known-users {
FirewallRule allow to 0.0.0.0/0
}
...
Run Code Online (Sandbox Code Playgroud)
所需的输出将是,
...
#start
FirewallRuleSet global {
FirewallRule allow tcp to google.com
FirewallRule deny tcp to facebook.com
FirewallRule deny tcp to twitter.com
FirewallRule allow tcp to exaple.com
#more rules
}
#end
FirewallRuleSet known-users {
FirewallRule allow to 0.0.0.0/0
}
...
Run Code Online (Sandbox Code Playgroud)
我怎样才能更换之间的整个文本#start
和 …
我有一个字符串
/ip/192.168.0.1/port/8080/
Run Code Online (Sandbox Code Playgroud)
我想获得两个单独的变量,它们将包含端口和 IP
喜欢。192.168.0.1
和8080
据我所知 /ip/ 和 /port/ 会一直存在我得到的 Ip 如下,
expr /ip/192.168.0.1/port/8080/ : '/ip/\(.*\)/port/'
Run Code Online (Sandbox Code Playgroud)
这将输出192.168.0.1
只是不知道如何获取端口,我尝试了类似的命令,
expr /ip/192.168.0.1/port/8080/ : '/port/\(.*\)/'
Run Code Online (Sandbox Code Playgroud)
但它没有给出端口 .. 如何获取端口。