簡體   English   中英

在shell命令中使用本地perl變量

[英]Using local perl variables in shell command

我正在嘗試運行遠程查找命令,但是我必須將它的值傳遞給我,這些值是從用戶的命令行參數中獲取的。 但是,我收到“未定義的變量”錯誤。 我正在做類似的事情:

my $ssh = Net::OpenSSH->new($host);
#I am getting a part of the $path and $pattern from command line
#I have to look for $pattern at the $path
my @files = $ssh->capture(q(find $path -name $pattern) );

當我給出確切的路徑和模式時,此命令運行良好,但是當我將其替換為變量時出現錯誤。

q(find $path -name $pattern)

這是文字字符串find $path -name $pattern ,美元符號等。

Perl有幾種不同的報價。 ""將插值變量(即用其值替換變量), ''則不會。 q()是另一種寫'' 您需要qq()

有關更多信息,請參見perlop中的Quote和Quote-like運算符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM