Perl ワンライナーでシェル変数を渡すには -s オプションを使えばよい。 書式 perl -se '...' -- -Perlで使う変数名=シェル変数名 実行例 $ FOO=bar; perl -sle 'print $var' -- -var=$FOO bar 参考 sオプションを使います echo -e "hogehoge\nfugafuga" > myfile.txt var="hogehoge\n";cat myfile.txt | perl -pse 's/$shell_var//' -- -shell_var=$var [小ネタ]perlワンライナーにシェル変数を渡す - Qiita -s コマンドライン上のプログラム名の後から、ファイル名引数 (または引数 --) の前までのスイッチのための、原始的な解析を 行なえるようにします。 ここで見つかったスイッチは、@ARGV