追記 コメント欄で指摘されているように、 Net::SSH::Perl モジュールを利用したほうが無用なことで困らずに済みそうです。 use String::ShellQuote; my $command = q[gunzip -c /path/to/access_log.gz | perl -e 'while(<>){print}']; my $quoted_command = shell_quote($command); # ' => '\'' とクォートされる qx/ssh $server $quoted_command/; しかしこれが何度やっても失敗するサーバがあり、エラーメッセージ Badly placed ()'s. でぐぐってみると csh/tcsh に特有のものらしく、確かに該当サーバのログインシェルは csh だった。 \(\) などとしなくてはならないらしい。が St