作成年の最初の部分を取得しましたが、月を取得して増やすと困惑します。
#!/bin/bash
varRan=$(( $RANDOM ))
newdir="testing_"$varRan
#echo $newdir
mkdir $newdir
cd ~/$newdir
for ((i = 2000; i<= 2022 ; i++; )); do
for ((m = 1; m<= 12 ; m++; )) do
touch $i$m".txt"
done
# touch $i$m".txt"
done
答え1
前にゼロを付けたシェル拡張を使用すると、必要に応じて適しています。
#/bin/bash
newdir="testing_$RANDOM"
mkdir "${newdir}"; cd "${newdir}"
for y in {2000..2022}; do
for m in {01..12}; do
touch "prefix_$y$m.txt"
done
done
答え2
カスタム形式を使用して、date
シェルから日付を生成できます。
$ date +%Y-%m-%d -d "2002-03-28 +1 days"
2002-03-29
$ date +%Y-%m-%d -d "2002-03-28 +1 months"
2002-04-28
$ date +%Y-%m-%d -d "2002-03-28 +1 years"
2003-03-28