1

最近 Capistranoで実行するdeployと、手順で次のエラーが発生します。

  * executing "find /var/www/<myapp>/releases/20121220195214/public/images\\ /var/www/<myapp>/releases/20121220195214/public/stylesheets\\ /var/www/<myapp>/releases/20121220195214/public/javascripts -exec touch -t -- 201212201952.40 {} ';'; true"
    servers: ["50.56.126.187"]
    [50.56.126.187] executing command
*** [err :: 50.56.126.187] find:
*** [err :: 50.56.126.187] `/var/www/<myapp>/releases/20121220195214/public/images /var/www/<myapp>/releases/20121220195214/public/stylesheets /var/www/<myapp>/releases/20121220195214/public/javascripts'
*** [err :: 50.56.126.187] : No such file or directory
*** [err :: 50.56.126.187]
    command finished in 452ms

2 つのバックスラッシュで終わるパスを見つけようとするのはなぜですか?

4

1 に答える 1

0

見つけるための単一の引数として複数のパスを渡そうとしているようです。パスリストを区切るスペースは円記号でエスケープされ、1つの引数としてfindに渡されます。それぞれのパスは、見つけるための個別の引数として渡されることになっているのではないかと思います。私はCapistranoに精通していないため、このプロセスを推進するものと、3つの個別の引数ではなく単一の引数として3つのパスを送信しようとしている理由を正確に指摘することはできません。

このフォーラムの投稿に記載されているように、表示されている二重の円記号は、RubyのString#inspectメソッドがどのように機能するかを示すアーティファクトです。

于 2012-12-20T20:19:45.633 に答える