Мда, много курил info date, так нихрена и не удалось подобрать. То есть оно конечно выводит, но это пока дата еще не ушла далеко.
master:~# date --date="$(date +%Y-10-31) -1 week"
Срд Окт 24 01:00:00 NOVST 2007
master:~# date --date="$(date +%Y-10-31) last Sunday"
Срд Окт 31 00:00:00 NOVT 2007
master:~# date --date="last Sunday"
Вск Окт 28 00:00:00 NOVST 2007
master:~# date --date="last Thursday"
Чтв Окт 25 00:00:00 NOVST 2007
master:~# date --date="last Friday"
Птн Окт 26 00:00:00 NOVST 2007
master:~# date --date="last Monday"
Пнд Окт 29 00:00:00 NOVT 2007
master:~# date --date="2007-10-31 last Sunday"
Срд Окт 31 00:00:00 NOVT 2007
А вот во фре будет просто: date -v1d -v11m -v-1d -v-sun
Можно было бы конечно предложить в кроне указать диапазон для дней 25-31 и день недели, но он будет трактовать это не как AND, а как OR, т.е. выполнит в любой день. Впрочем, можно указать что-то одно из, и в скрипте уже указать дополнительное условие для текущего дня.