Bash - Perlスクリプト変数の挿入

Bash - Perlスクリプト変数の挿入

Perlコードにbash変数を挿入するのに問題があります。このコードの目的は、bashスクリプトファイルを使用して端末で特定のperl印刷コマンドを実行することです。問題を次のコードに単純化しました。

i=5
myvar=$(perl -e 'print "AAA" x ($i)')
echo "$myvar"

値が5の変数iがありますが、iの値だけ文字列 "AAA"を印刷したいと思います。この場合は5です。このために与えられたPerlコードを使用したいと思います。現在、Perlコードは私の変数iの内容を読み取ることができません。これは、iの値を求める部分に「」を使用しなかったためである可能性が高い。

文字列「AAA」はシェルコードの16進コードに置き換えられているため、「と」を切り替えることは実際には可能ではありません。これは、ループ内の値が増加/変更されるため、iの代わりに5を使用することはできません。

Perlコードがi値を読み取ることができるようにしたり、コメントでこの問題を解決するのに役立ちましたか?

ベストアンサー1

変数拡張を有効にするには、次のようにします。

myvar=$(perl -e 'print "AAA" x ('"$i"')')

おすすめ記事