ループがコマンドから行を読み取るループ内で bash エイリアスを作成したいと考えています。出力を 1 行ずつ読み取るには、出力を にパイプする必要があると思いますread
。ただし、それを行うと、エイリアスは存在しません。
my に以下を含める場合.bashrc
:
for x in a1 a2; do
eval "alias $x='echo foo'"
done
echo -e "a3\na4" | while read x; do
eval "alias $x='echo foo'"
done
エイリアスa1
とa2
は存在しますが、a3
and はありa4
ません。これらの 2 つのループの違いは何ですか?