如何逃避這些外部字符*/
?Perl星號*字符問題
該命令正在使用shell界面。
當我在Perl腳本中添加它的*
性格壞命令:
my $sonar = "/opt/tools/wh/dtd/tools/sonar/sonar-runner-2.4/bin/sonar-runner -Dsonar.host.url=http://sonarqubesonar.com:9000 -Dsonar.projectKey=codeAnalysis.test50 -Dsonar.sourceEncoding=Cp1252 -Dsonar.projectBaseDir='/vob/test/test' -Dsonar.sources='/vob/test/test/app/,/vob/test/test/src' -Dsonar.projectName='test50' -Dsonar.java.binaries='/vob/test/test/**/*.jar' ";
這是它是如何調用。
my $cmd = " csh -c '$sonar '";
print "cmd\n";
my $result = system("($cmd) >> /logs/on.txt 2>&1");
我得到的錯誤是:
Dsonar.java.binaries='/vob/test/test/**/*.jar' "; this variable is broken (*)
Perl語句很好。星號將保留在你放置的位置。 – Borodin
什麼不工作?你如何使用這個變量。你有什麼讓你覺得它是'破'的? – Sobrique
一般來說,對於Perl來說,反斜槓\是轉義字符,儘管這條線看起來好像工作得很好。 – sniperd