-1

Я хотел скачать файл 50 ГБ из интернет-архива. Он загружал до 300 Кбит / с, и это займет несколько дней. Поэтому я написал скрипт для загрузки файлов по частям и загрузки на Google Drive без кэширования и заполнения моего сервера объемом 20 ГБ. Теперь у меня есть файлы .000 до .082 .

Я хотел бы открыть это в 7z, но я был немного небрежен и начал с 000 вместо 001 , я бы предпочел не объединять их в первую очередь, так как я бы переименовал эти файлы, увеличив их на 1, чтобы я получил файл Exts, как 001 , 002 , 003?

Я попытался открыть их в 7z, но он читает только файл .000.

У меня есть доступ к Windows и Linux, я пробовал Bulk File Renamer Utility для Windows, но, похоже, не нравится увеличивать расширения файлов с помощью Numbering (10) есть ли способ сделать это в Bulk File Renamer Utility, или иным образом как бы мне использовать командную строку linux для переименования их всех?

1 ответ1

2

Этот однострочник должен работать. Протестировано на macOS High Sierra (10.13.6).

Он работает с помощью ls -r для вывода списка файлов в обратном порядке, а затем - с помощью математики - просто добавляет +1 к каждому расширению файла.

Сценарий предполагает, что у вас есть файлы с именами с таким шаблоном, как этот:

test.000
test.001
test.002
test.003

И переименует их следующим образом:

test.001
test.002
test.003
test.004

Вот «пробная версия», которая просто повторяет команду для вашего обзора:

ls -r | while read f; do echo mv "${f}" "${f%.*}.$(printf '%03d' $(expr ${f##*.} + 1))"; done

И просто удалите это echo чтобы заставить его работать и делать это так:

ls -r | while read f; do mv "${f}" "${f%.*}.$(printf '%03d' $(expr ${f##*.} + 1))"; done

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .