私は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 )"