Bash: Как я копирую метки времени с помощью касания и regex?

Если оба - поля Linux, Вы можете иметь свой ssh-ключ, которым обмениваются (но рассмотреть безопасность однажды), и thenembed scp+mysqldump в маленьком сценарии, и поместите то же в crontab на месте в настоящее время существующий единственный mysqldump.

Надежда это помогает..

Наилучшие пожелания Debajit Kataki

3
задан 27 August 2010 в 01:30
1 ответ

Давайте посмотрим, как насчет...

for f in *.mpg; do
   touch -r "$f" "${f}.m4v"
done

Никакая потребность в regexps, только для взятия проблемы от правой стороны. Это намного легче к кругу через *.mpg, и добавьте .m4v к ним, чем обратное, хотя Вы могли также записать этому другой путь без regexps (только для забавы):

for f in *.m4v; do
   touch -r "${f%\.m4v}" "$f"
done

Если Вы хотите сделанный с одной командой, Вы могли бы сделать это с find (ограничение его к одному уровню для безопасности):

find . -maxdepth 1 -name '*.mpg' -exec touch -r {} {}.m4v \;
7
ответ дан 3 December 2019 в 05:19
  • 1
    Это работало отлично, Спасибо! существует полезное знание в каждом из Ваших трех примеров. –  user52487 27 August 2010 в 01:59
  • 2
    ${foo%bar} часть Bash (и другие оболочки) возможность расширения параметра и не регулярные выражения (это более тесно связано с globbing). Иначе +1. –  Paused until further notice. 27 August 2010 в 04:05
  • 3
    @Dennis: Я никогда не говорил, что использовал regexps, я на самом деле подчеркнул, что не было необходимо использовать regexps для любого из этих решений. –  ℝaphink 27 August 2010 в 09:56
  • 4
    Извините, я неправильно читал ту строку. –  Paused until further notice. 27 August 2010 в 12:13

Теги

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