Обрезать 4 символа из имени файла (более 1000 файлов) - PullRequest
1 голос
/ 03 сентября 2011

У меня более 1000 изображений с такими именами файлов, как "300_03e05a1f5fb83bc113edaa898b2c46f3.jpg", и мне нужно избавиться от первых 4 символов (300_) каждого имени файла. Я не мог найти инструмент для Mac, который мог бы сделать это, и я не знаю соответствующей команды терминала. Кто-нибудь может мне помочь?

Спасибо

Ответы [ 3 ]

1 голос
/ 03 сентября 2011

Вы можете написать приложение на c ++, если знаете c ++

Получить все изображения в одной папке, а затем запустить цикл, который проходит через каждый файл с помощью этого http://www.ozzu.com/programming-forum/directory-listing-t42574.html

Затем переименуйте файлы с помощью функции c ++ rename (старое имя, новое имя);

oldname, например, будет 300_03e05a1f5fb83bc113edaa898b2c46f3.jpg, а новое имя будет

string newname = ""; 
newname += oldname.substr(4, oldname.length() - 4);`

документация по переименованию -.http://www.cplusplus.com/reference/clibrary/cstdio/rename/

другое решение - http://wfco.de/macosx/Renamer4Mac

0 голосов
/ 03 сентября 2011

Я не эксперт по Mac, но вы можете посмотреть здесь .

В качестве альтернативы, вы можете попробовать это .

0 голосов
/ 03 сентября 2011

Если вы создаете файл bash (не забудьте chmod a+x) и используете $ {1: 6}, который удалит первые шесть символов. Например, если вы поместите это в tmp.sh:

echo ${1:6}

Затем введите:

find . -name "*.jpg" -exec ./tmp.sh {} \;

Чтобы увидеть результаты. Обратите внимание, что я убираю первые 6, чтобы избавиться от ведущих "./". Чтобы удалить первые четыре, просто используйте ${1:4} - обратите внимание, что $ {1} является первым аргументом, передаваемым в файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...