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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Перенос строки в конце имени файла после переименовывания башем.  (Прочитано 2053 раз)

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

Оффлайн ShujuWii

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Здравствуйте.
Когда я пишу любой скрипт для баша, который создаёт или переименовывает файлы, в конце имени файла оказывается перенос строки. Причем такое со всеми файлами, кроме самого последнего. Не важно, командой mv я пользуюсь, или cat'ом в файл пишу...
Раньше я этого не замечал, однако теперь у меня скопилось просто огромное количество файлов с переносом строки в конце.
У меня два вопроса: как мне сделать, чтобы перенос строки больше не появлялся, и каким образом можно исправить  старые файлы? Потому что теперь баш уже не хочеть воспринимать именя этих файлов, перенос строки для него работает как перенос строки)

Оффлайн ZwS

  • Старожил
  • *
  • Сообщений: 1674
    • Просмотр профиля
покажи скрипт, думаю ты гдето в нем ошибся.
Dell Inspiron One 2330 | Intel+Radeon HD7650A | 8GB RAM | Ubuntu GNOME 17.10

Оффлайн ShujuWii

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Скрипт? Простейший.
mv "./Whitestar1802/night_out_by_whitestar1802-d4u90g6.png" "./Whitestar1802/Night Out by Whitestar1802.png"


mv "./Whitestar1802/process__night_out_by_whitestar1802-d4u95ks.png" "./Whitestar1802/Process: Night Out by Whitestar1802.png"


mv "./Whitestar1802/the_twili_by_whitestar1802-d4ug47p.png" "./Whitestar1802/The Twili by Whitestar1802.png"


mv "./Whitestar1802/promises__promises_by_whitestar1802-d4unxvf.png" "./Whitestar1802/Promises, Promises by Whitestar1802.png"


mv "./Whitestar1802/ship_of_dreams_by_whitestar1802-d4vsph4.png" "./Whitestar1802/Ship of Dreams by Whitestar1802.png"


mv "./Whitestar1802/2_224_souls____by_whitestar1802-d4wban8.png" "./Whitestar1802/2,224 souls... by Whitestar1802.png"


mv "./Whitestar1802/inner_conflict_by_whitestar1802-d4w92zs.png" "./Whitestar1802/Inner Conflict by Whitestar1802.png"


mv "./Whitestar1802/process__inner_conflict_by_whitestar1802-d4w94f6.png" "./Whitestar1802/Process: Inner Conflict by Whitestar1802.png"


mv "./Whitestar1802/process__without_purpose_by_whitestar1802-d4x6glt.png" "./Whitestar1802/Process: Without Purpose by Whitestar1802.png"


mv "./Whitestar1802/without_purpose_by_whitestar1802-d4x6dm3.png" "./Whitestar1802/Without Purpose by Whitestar1802.png"


mv "./Whitestar1802/fangirl_vision_by_whitestar1802-d4xddgs.png" "./Whitestar1802/Fangirl Vision by Whitestar1802.png"


mv "./Whitestar1802/process__where_i_belong_by_whitestar1802-d4xs9sd.png" "./Whitestar1802/Process: Where I Belong by Whitestar1802.png"


mv "./Whitestar1802/where_i_belong_by_whitestar1802-d4xrwh5.png" "./Whitestar1802/Where I Belong by Whitestar1802.png"


mv "./Whitestar1802/princess_cheeselegs_by_whitestar1802-d4y0amt.png" "./Whitestar1802/Princess Cheeselegs by Whitestar1802.png"


mv "./Whitestar1802/anubis_by_whitestar1802-d4y8u2e.png" "./Whitestar1802/Anubis by Whitestar1802.png"
И так далее, примерно две тысячи строк.
Просто переименовываю выкачанные граббером галереи.
« Последнее редактирование: 07 Августа 2012, 14:59:32 от ShujuWii »

Оффлайн ZwS

  • Старожил
  • *
  • Сообщений: 1674
    • Просмотр профиля
ты это все ручками состовляешь или каким то образом выгребаешь названия картинок?
Dell Inspiron One 2330 | Intel+Radeon HD7650A | 8GB RAM | Ubuntu GNOME 17.10

Оффлайн ShujuWii

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Граббер создаёт html страницу, в которой есть имена, я её в скрипт для переименовывания переделываю регулярными выражениями.

andrey_p

  • Гость
Граббер создает страницу с досовскими окончаниями строки, надо сконвертировать (1000 и 1 способ - гугл).

Для исправления, посмотри что выводит такая команда, если не съедает последний значащий символ, пробуй (убрав echo) в каталоге с одним файлом, если все нормально, на остальных:

for f in *; do
  echo mv "$f" "${f%?}"
done

Оффлайн ShujuWii

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Благодарю, это помогло.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
пробел
for f in *; do
  echo "mv \"$f\" \"`echo $f | sed 's/_/ /g'`\""
done
Wars ~.o

 

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