我试图从用户那里收集一个ip并做一些基本的错误检查和黑客攻击不必要的空白区域,但是我遇到了一些我认为是我的正则表达式的问题.
my $serverIP;
print "Enter vSphere server's IP\n";
while(<>){
$serverIP = $_;
print "DEBUG <$serverIP>\n";
if (/$serverIP = (\d+\.\d+\.\d+\.\d+)/){
print "Match found $1\n";
$serverIP = $1;
last;
}
else{
print "Not an IP\n";
print "Please enter a valid IP\n";
}
}
print "I found $serverIP!\n";
Run Code Online (Sandbox Code Playgroud)
我知道正则表达式很简单但它与1.1.1.1不匹配,因为我认为它应该
我想知道IO :: Socket :: SSL模块的位置,或者更具体地说,知道SSL.pm文件所在的位置.我已经知道我已经安装了IO :: Socket :: SSL因为use IO::Socket::SSL有效.
我试图从可执行(.exe)文件中获取Perl脚本(.pl)..exe文件最初是用Perl编写的,但是没有保存.pl文件.有快速的方法吗?我正在使用Strawberry Perl for windows.
谢谢
cat hosts.txt | while read h; do telnet $h; done
Run Code Online (Sandbox Code Playgroud)
当我运行此命令时,它将远程登录到第一个拒绝连接的主机,然后退出而不是遍历文件中的其他主机。为什么它在第一个主机之后退出循环,我该如何解决?
谢谢。
我正在尝试用FOAF和Perl做一些事情.我对目前的解决方案不满意,我想自己动手.请不要参考除以外的任何模块XML::LibXML.
这里参考的是FOAF文件的片段
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns:admin="http://webns.net/mvcb/">
<foaf:Person rdf:ID="me">
<foaf:name>Evan Carroll</foaf:name>
....
Run Code Online (Sandbox Code Playgroud)
现在,排除空白,我正在尝试重新创建它XML::LibXML.但是,我很遗憾地陷入了第一线.这只关注第一行:
我读到这个
RDF,在命名空间中rdf声明
rdf名称空间属性xmlnshttp://www.w3.org/1999/02/22-rdf-syntax-ns#rdfs名称空间属性xmlnshttp://www.w3.org/2000/01/rdf-schema#foaf名称空间属性xmlnshttp://xmlns.com/foaf/0.1/admin名称空间属性xmlnshttp://webns.net/mvcb/首先你需要一个元素rdf:RDF,这似乎很棘手.阅读我找到的文档,但这似乎没有做我想要的:XML::LibXML::DocumentcreateElementNS()
use XML::LibXML;
my $doc = XML::LibXML::Document->new( '1.0', 'UTF-8' );
my $foaf = $doc->createElementNS( 'RDF', 'rdf' );
print $foaf->toString; # prints <rdf xmlns="RDF"/>
Run Code Online (Sandbox Code Playgroud)
现在,我尝试createElement('rdf:RDF')它的工作原理!我得到了根元素rdf:RDF.这是我们应该如何创建根元素?我只是读错了XML吗?
现在,我需要创建属性(模式声明).我尝试了记录不佳的文件XML::LibXML::Document, …
我正在尝试awk在我的脚本中处理10个文件,并且我收到以下错误.
$ sh skipper.sh file1 filea fileb filec filec fileb filea fileb filec fileb awk: cmd. line:2: (FILENAME=filec FNR=7) fatal: cannot open file `file10' for reading (No such file or directory)
Run Code Online (Sandbox Code Playgroud)
有谁知道如何修理它?它与<10个文件正常工作,但我需要使用10或50个文件.
这是我的代码
awk -v nfiles="10" 'NR==FNR{a[$0]++;next}
$0 in a {a[$0]++; next}
{b[$0]++}
END{
for(i in a){
if(a[i]==nfiles) {
print i > "output1"
}
else if(a[i]==1) {
print i > "output3"
}
}
for(i in b){
if(b[i]==nfiles-1) {
print i > "output2"
}
}
}' $1 $2 $3 …Run Code Online (Sandbox Code Playgroud) 我想在Sublime Text 2中使用以下Zen Coding缩写包装一些列表项:
nav>ul.example>li*4
Run Code Online (Sandbox Code Playgroud)
这是列表的一个例子:
狗
猫
马
牛
我该怎么做呢?
有人可以解释一下吗?我运行了如下所示的命令
$ cat `bash`
$ ls
$ ctrl+D
Run Code Online (Sandbox Code Playgroud)
它在终端上给了我一些意想不到的输出.
注意:bash在反引号中.
这个命令给我以下输出:
cat /proc/net/dev | awk '{print $1}'
Inter-|
face
eth0:
lo:
wlan0:
Run Code Online (Sandbox Code Playgroud)
有没有办法解雇线间,面,所以我只能得到接口的名称?
示例XML:
<test name="1" result="Passed" starttimestamp="2013-05-07 10:10:44.361 -0700" endtimestamp="2013-05-07 10:10:45.361 -0700" elapsed="1" />
<test name="2" result="Passed" starttimestamp="2013-05-07 10:10:45.362 -0700" endtimestamp="2013-05-07 10:10:46.362 -0700" elapsed="1" />
<test name="3" result="Passed" starttimestamp="2013-05-07 10:10:46.363 -0700" endtimestamp="2013-05-07 10:10:53.365 -0700" elapsed="7" />
<test name="4" result="Passed" starttimestamp="2013-05-07 10:10:53.365 -0700" endtimestamp="2013-05-07 10:11:39.374 -0700" elapsed="46" />
Run Code Online (Sandbox Code Playgroud)
首先,我试过了
xpath somefile.xml test
Run Code Online (Sandbox Code Playgroud)
它给了我:
<test name="1" result="Passed" starttimestamp="2013-05-07 10:10:44.361 -0700" endtimestamp="2013-05-07 10:10:45.361 -0700" elapsed="1" />-- NODE --
<test name="2" result="Passed" starttimestamp="2013-05-07 10:10:45.362 -0700" endtimestamp="2013-05-07 10:10:46.362 -0700" elapsed="1" />-- NODE --
<test name="3" result="Passed" starttimestamp="2013-05-07 …Run Code Online (Sandbox Code Playgroud)