小编ser*_*sat的帖子

如何使用Perl获取文件的dirname?

在我的perl脚本中,我有了param $FILE=/etc/sysconfig/network

以哪种方式(在perl中)我只能剪切目录并将目录放在$ DIR param中

为了得到:

$DIR=/etc/sysconfig

(like dirname /etc/sysconfig/network in shell script)
Run Code Online (Sandbox Code Playgroud)

perl

17
推荐指数
3
解决办法
4万
查看次数

我应该将Perl/Tk,Tcl :: Tk或Tkx用于Perl GUI吗?

我真的很喜欢Perl/Tk,但已经认为它是DOA.我认为Tcl::Tk并且Tkx是更好的解决方案.假设我放弃了Perl/Tk.是否是"最受支持"的路线Tcl::Tk(自2007年以来一直没有更新,其作者似乎无法联系到),或者Tkx?这些是否被积极使用/支持?

perl user-interface tk-toolkit tcl tkx

16
推荐指数
2
解决办法
9238
查看次数

用vi缩进或注释几个文本行

可以用vim或vim同时评论或缩进多行吗?例如:

for item in Lista:
    ind = int(floor(1.0*(item-lmin)/width))
    if ind==nintervals:
        ind=ind-1
    print item,ind
Run Code Online (Sandbox Code Playgroud)

评论它:

#for item in Lista:
    #ind = int(floor(1.0*(item-lmin)/width))
    #if ind==nintervals:
        #ind=ind-1
    #print item,ind
Run Code Online (Sandbox Code Playgroud)

或缩进到:

  for item in Lista:
      ind = int(floor(1.0*(item-lmin)/width))
      if ind==nintervals:
          ind=ind-1
      print item,ind
Run Code Online (Sandbox Code Playgroud)

PD是否与VI和VIM之间存在差异?

vim

16
推荐指数
3
解决办法
4万
查看次数

如何在perl中合并两个数组,交替每个数组的值

假设我有2个如下所述的数组

@a1 = ("Vinay", Raj, harry);
@b1 = ("dude","rock");
Run Code Online (Sandbox Code Playgroud)

合并后我希望得到这样的结果

[
    Vinay
    dude
    Vinay
    rock
    Raj
    dude
    Raj
    rock
    harry
    dude
    harry
    rock
]
Run Code Online (Sandbox Code Playgroud)

基本上我想将array1的每个索引值合并到array2的所有索引值.

添加到上面的问题我有另一个问题.

对于上面的相同问题,如何在特定数组索引处合并2个数组.例如,我有160个元素的2个数组,现在我想在集合中的每个第5个元素合并数组,这可能吗?

arrays perl

16
推荐指数
2
解决办法
6万
查看次数

如何在Perl中读取外部命令的错误输出?

作为更大的Perl程序的一部分,我正在检查diff文件夹中输入文件的命令输出与参考文件,其中空白输出(匹配)是传递结果,diff的任何输出都是失败结果.

问题是,如果目标文件夹缺少预期文件的数量,则异常diff throws不会作为输出,从而创建错误传递.

输出示例:

diff: /testfolder/Test-02/test-output.2: No such file or directory
Run Code Online (Sandbox Code Playgroud)

测试01:通过

测试02:通过

代码如下:

$command = "(diff call on 2 files)";
my @output = `$command`;
print "Test-02: ";
$toPrint = "PASS";
foreach my $x (@output) {
    if ($x =~ /./) {
        $toPrint = "FAIL";
    }
}
Run Code Online (Sandbox Code Playgroud)

如果diff呼叫有任何输出,这是一个快速的hackery作业失败.有没有办法检查被调用的命令抛出的异常backticks

perl backticks

15
推荐指数
4
解决办法
2万
查看次数

如何使用B :: Hook来操作perl解析器

我正在寻找perl解析器操作.看起来各种B::Hooks模块都是人们使用的.我在想:

  1. 对于没有XS经验的人来说,最好的起点.任何相关的博客文章?

  2. 创建新运算符需要做多少工作,例如:

    $a~>one~>two~>three

~>会工作,->但它不会试图打电话,undef而只是简单地返回undef到LHS.

虽然源过滤器可以工作 - 我更感兴趣的是看看如何在更深层次上操作解析器.

perl xs

15
推荐指数
1
解决办法
214
查看次数

如何从命令行但不Cscript命令/ WScript的运行VBScript

我在VBScript初学者.我GOOGLE了它和认识了,我们可以从命令行由下面的命令执行运行VBScript:

例如,我的vbscript名称是Converter.vbs&它出现在文件夹中D:\VBS.

我可以通过以下方式运行:

CScript "D:\VBS\Converter.vbs"
Run Code Online (Sandbox Code Playgroud)

要么

WScript "D:\VBS\Converter.vbs"
Run Code Online (Sandbox Code Playgroud)

现在,我想上面执行VBScript 没有 CscriptWscript只需键入VBscript的名称即转换器的名称命令.

我不希望指定VBSCRIPT每次的完整路径.

任何人都可以请指导我该怎么做?

vbscript

14
推荐指数
4
解决办法
17万
查看次数

MSI安装程序相对于标准setup.exe有什么好处?

如果您需要安装100%.NET产品,您是否应该更喜欢MSI安装程序?为什么?

.net windows-installer

12
推荐指数
2
解决办法
4527
查看次数

收听google.maps.InfoWindow类的domready事件

所以,我想在我的网页上添加一个谷歌地图.当您单击地图上的标记时,我想在弹出的气泡中添加一个表单.

API文档说明了domready

"当包含InfoWindow的内容附加到DOM时会触发事件.如果要动态构建信息窗口内容,可能希望监视此事件."

我该如何收听此活动?

这是文档.

javascript google-maps

10
推荐指数
1
解决办法
2万
查看次数

确定Tcl中变量的类型

我正在寻找一种在Tcl中找到变量类型的方法.例如,如果我有变量$ a,我想知道它是否是一个整数.

到目前为止我一直在使用以下内容:

    if {[string is boolean $a]} {
    #do something
    }
Run Code Online (Sandbox Code Playgroud)

这似乎适用于以下类型:
alnum,alpha,ascii,boolean,control,digit,double,false,graph,integer,lower,print,punct,space,true,upper,wordchar,xdigit

但是它无法告诉我我的变量是否可能是数组,列表或字典.有谁知道如何判断一个变量是否是这三个中的任何一个?

variables tcl object-type

10
推荐指数
3
解决办法
3万
查看次数