/ / linuxコマンドから生成された文字列を変数に入力する方法は? - linux、shell

どのようにlinuxコマンドから変数に生成された文字列を入力するには? - linux、shell

私はLinuxのシェルスクリプトをコーディングする際にいくつかの小さな問題に直面しています。

私のコードは以下の通りです。私は入力に苦労しています私の変更された文字列名は、以下に示すように "fileName"という名前の変数になります。そして、私は以前のコードがうまくいきます。ただし、何も出力しません。

この問題を解決するには?

for file in ./*.txt
do
fileName=$file | rev  | cut -d. -f2 | rev
echo {$fileName}
done

私が言ったように、echo {$ fileName}は抽出したい単語を出力しませんでした。

私はあなたの役に立つアドバイスを楽しみにしています:)

回答:

回答№1は1

コマンド置換を使用する必要があります $()

また使用する echo 変数の値を取得する file

fileName="$( echo "$file" | rev  | cut -d. -f2 | rev )"

またはここで使用する文字列:

fileName="$( rev <<<"$file" | cut -d. -f2 | rev )"