私は bash スクリプトを書くのはまったく初めてですが、ほぼ完璧に機能するスクリプトを書くことができ、自分自身を本当に誇りに思っています。しかし、私にはこの問題があり、なぜそれが機能しないのかわかりません。私の現在のコードの一部はこれです:
for begin in 1 51
do
echo -e "$begin"
url="http://something&start-index=$begin&something"
wget -O $HOME/Music/YoutubePlaylist/output$begin.txt $url 2>&1
cat output1.txt > output.txt
if ! [[ "$begin" = 1 ]]
then
cat output$begin.txt >> output.txt
fi
done
それは完全に機能します。
ただし、最初の行に 101 を追加すると、機能しません。理由はありますか?一時ファイルを見ると実際に行うことは、output1.txt にあるものだけを output.txt に書き込み、他には何も書き込みません。
PS: output1.txt と output51.txt は空ではありませんが、output101.txt は空です。ヒントになるかも……。