どのようにこれらの外字をエスケープできますか*/
?Perlアスタリスク*文字の問題
このコマンドはシェル画面で動作しています。
私は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