zsh autcomplete не обновляет исполняемые файлы пути [дубликат]

Вот решение bash , которое проходит через файлы, перемещая те, которые соответствуют компоненту yyyymm (для значения гггг в диапазоне 2000-2099):

months=('' January February March April May June July August September October November December)

for f in 20[0-9][0-9][0-3][0-9]*
do
    year=$(echo "$f" | grep -Po '^20\d\d')           # Extract the four digit year, 20nn
    mm=$(echo "$f" | grep -Po '^(?<=20\d\d)\d\d')    # Find the two digit month number 01-12
    month=${months[$mm]}                             # Convert to a month name

    test -n "$year" -a -n "$month" && echo mv "$f" "$yyyy/$month/$f"
done

Удалите префикс echo из mv , когда будете готовы к работе.


Если вы знаете, что все файлы начинаются с 2016 , вы можете несколько упростить обработку:

for f in 2016[0-3][0-9]*
do
    mm=$(echo "$f" | grep -Po '^(?<=2016)\d\d')    # Find the two digit month number 01-12
    month=${months[$mm]}                           # Convert to a month name

    test -n "$month" && echo mv "$f" "2016/$month/$f"
done
91
05.10.2014, 20:18
0 ответов

Теги

Похожие вопросы