Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: помогите преобразовать строчку чтобы получилось переименование  (Прочитано 188 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн LoViK

  • Автор темы
  • Участник
  • *
  • Сообщений: 170
    • Просмотр профиля
добрый всем день.
имеется дофига файлов с названием такого формата
force-30037355661-1109-20160211-124003-1455187203.9978для перемещения второго блока названия с третьим, использую команду
prename  's/(\d+)-(\d+)/$2-$1/' force-*.wavпомогите преобразовать коману таким образом чтобы имена файлов сменились
force-1109-20160211-124003-30037355661-1455187203.9978тоесть второй блок просто переместить перед шестым
« Последнее редактирование: 14 Февраль 2016, 15:17:22 от LoViK »

Оффлайн R.E.I.S.U.B.

  • Участник
  • *
  • Сообщений: 102
  • Welcome to the Madhouse!
    • Просмотр профиля
rename 's/(.*)-(.*)-(.*)-(.*)-(.*)-(.*).(.*)/$1-$3-$4-$2-$5.$6/' <filename>
« Последнее редактирование: 14 Февраль 2016, 15:55:41 от R.E.I.S.U.B. »
ОС: Ubuntu 14.04.1 LTS 64-bit; Ядро: 3.19.0-56-generic

Оффлайн Azure

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5659
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
такого формата
force-30037355661-1109-20160211-124003-1455187203.9978 … использую команду … force-*.wav
или я что-то не понимаю?
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Laa-Laa

  • Любитель
  • *
  • Сообщений: 84
  • Это трудно объяснить, но сложно понять.
    • Просмотр профиля
    • http://any.mooo.com
rename 's/(.*)-(.*)-(.*)-(.*)-(.*)-(.*).(.*)/$1-$3-$4-$2-$5.$6/' <filename>

touch force-30037355661-1109-20160211-124003-1455187203.9978
->ls ; rename 's/(.*)-(.*)-(.*)-(.*)-(.*)-(.*).(.*)/$1-$3-$4-$2-$5.$6/' * ; ls
force-30037355661-1109-20160211-124003-1455187203.9978
force-1109-20160211-30037355661-124003.1455187203.997

->rm force-1109-20160211-30037355661-124003.1455187203.997

->touch force-30037355661-1109-20160211-124003-1455187203.9978

->ls ; rename 's/(.*)-(.*)-(.*)-(.*)-(.*)-(.*)\.(.*)/$1-$3-$4-$2-$5-$6\.$7/' * ; ls
force-30037355661-1109-20160211-124003-1455187203.9978
force-1109-20160211-30037355661-124003-1455187203.9978
« Последнее редактирование: 14 Февраль 2016, 16:42:25 от Azure »
Помогаю клоуну набрать 20к сообщений.
danger! (будугуруUbuntu пользователь под набледением.)

Оффлайн Azure

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5659
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
Код: Bash
  1. prename 's/(\d+-)(.*-)/$2$1/' force-[0-9]*
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

 

Страница сгенерирована за 0.067 секунд. Запросов: 24.