2013-10-30 25 views
0

我使用的P4模塊在Perl爲了將文件添加到資料庫:的Perl模塊P4標誌傳遞

$p4->Run('add', $filename); 

但我想指定的變化列表的名稱作爲常規shell命令:

p4 add [-c changelist] filename 

總之我想知道我是如何通過標誌。

感謝

+1

什麼你使用的是確切的模塊? –

+0

這是一個腳本中的遺留物,我發現'use P4;' – Zach

回答

1

我知道這是快速&骯髒的,但你能不能只用

system "p4 add -c $changelist $filename"; 

如果用「」這將插在Perl中的變量,我認爲是你所需要的。

+0

Perl區分大小寫:'system'。你真的想用這些方括號嗎? – toolic

+0

Gnah,詛咒我的愚蠢的德國人在工作時自動更正IE。我只是複製/粘貼他指定的shell命令。 – DeVadder

+1

通常,括號代表可選的參數,它們不是從字面上使用的。 – toolic

0

這應該工作:

$p4->Run('add', '-c', $changelist, $filename); 

P4Perl API docs for the Run method沒有明確說,如何將選項傳遞。不過,也有在顯示選項傳遞文檔的其他例子

+0

我試過了,但它根本不起作用。它應該如何將參數與標誌配對? – Zach

0

我用下面的模板末($p4->RunSubmit("-r", $change);例如):

$change = $p4->FetchChange(); 
$change->{ 'Description' } = "Some description"; 
$p4->RunSubmit("-r", $change); 

它還提交文件