Bashスクリプトの基本を理解するのに苦労しています。ここに私が持っているものがあります:
#!/bin/bash
FILES="/home/john/my directory/*.txt"
for f in "${FILES}"
do
echo "${f}"
done
私がやりたいのは、すべての.txt
ファイルをfor
ループにリストすることです。しかし、中のスペースmy directory
とアスタリスクは*.txt
うまく再生されていません。二重引用符の有無にかかわらず、変数名に中括弧の有無にかかわらず使用してみましたが、すべての.txt
ファイルを印刷できません。
これは非常に基本的なことですが、疲れてまっすぐに考えることができないため、私はまだ苦労しています。
何が間違っていますか?
ファイルにスペースやアスタリスクがなければ、上記のスクリプトを正常に適用することができました。しかし、スペースとアスタリスクの両方があると、すべてが台無しになります。