5

У меня есть старый компакт-диск с файлами Amiga, который я хочу скопировать на мой современный ПК с Windows 7.

Большинство файлов читаются нормально, но когда Windows находит файл с проблемным именем файла, она позволяет только пропустить этот файл. Он не будет автоматически копировать файл и удалять запрещенные символы (такие как '?'или' | ') в нем одновременно.

Я хочу эти якобы «запрещенные» файлы. Как заставить Windows автоматически переименовывать их при копировании и продолжить с остальными?

Я пробовал следующие программы файлового менеджера, но все безуспешно. Я даже попытался углубиться в параметры каждой программы, надеясь использовать собственный метод копирования:

  • FreeCommander XE (имеет собственную процедуру копирования, но все равно не работает)
  • XYplorer (имеет собственную подпрограмму копирования, но все равно не работает)
  • Двойной командир
  • Каталог Opus 11 64-битный. (Pro edition)
  • xplorer²
  • Q-Dir
  • Нереальный командир
  • NexusFile
  • Total Commander
  • Мой командир
  • Nomad.NET
  • Просто менеджер

4 ответа4

4

Все упомянутые вами решения являются общими файловыми менеджерами. Я предлагаю взглянуть на инструменты, специально предназначенные для изображения и копирования оптических носителей.

Я не фанат продвижения коммерческого программного обеспечения здесь, но я использовал IsoBuster несколько раз для очень похожих проблем довольно успешно. Хорошая новость: у них есть (ограниченная функциональность) бесплатная версия, так что вы можете попробовать ее, прежде чем купить.

1

Попробуйте утилиту cp поставляемую с моей оболочкой Hamilton C. (Полное раскрытие: я автор.) Внутри я использовал новый длинный формат Microsoft UNC (используя \\?\ prefix) предназначен для предоставления доступа к файлам и каталогам с именами, содержащими произвольные символы. Я сомневаюсь, что многие другие производители используют это еще. Вы можете попробовать это с бесплатной демо-версией.

cp не включает функцию автоматического переименования, поэтому эту часть вам придется выполнить одним из нескольких способов.

  1. Вы можете быть в состоянии cp весь каталог на жесткий диск с нечетными именами, то mv вещи вокруг по своему вкусу. Сначала создайте каталог, затем cp все в каталог. Если эксперимент не удался, и вы застряли с некоторыми именами, которые вы не можете указать в командной строке, вы можете rm -x весь каталог и начать все сначала.
  2. Вы можете написать скрипт, который будет копировать все части с нечетными именами по отдельности, указав, как каждый фрагмент должен быть переименован в командной строке в cp . Этот скрипт может быть немного большим, чем длинный список команд cp вы редактировали, возможно, начиная со списка имен файлов, генерируемых ls -r1 .

Пожалуйста, дайте мне знать, как это работает. Вы можете связаться со мной в автономном режиме, если я могу быть полезным.

0

Проверьте ответ на:Как я могу массово переименовать файлы?

Утилита Bulk Rename - это лучший ответ, в котором есть опции копирования и регулярные выражения соответствия / замены.

Проверяя руководство, у них также есть опция «Удалить символы»:

Note that the "Remove Symbols" option removes the following symbols (some of which are not valid
in filenames anyway):
! £ $ % ^ & * ( ) - _ = + [ ] { } ; : ' @ # ~ , .  / ? \ | ` ¬ ¦
0

Вы должны быть в состоянии сделать это из командной строки в Windows довольно легко. Конкретно переименовывать при копировании я не уверен. Но я смог переместить «запрещенные» файлы, изменив или удалив расширение файла.Затем копируем их и добавляем расширение файла обратно.

Откройте командную строку. Перейдите в папку, где находятся ваши файлы.

cd C:\File\Directory\With\Your\Files

ren * .txt * .doc

Еще лучше.Вот ссылка на что-то ранее написанное:http://www.windows-commandline.com/rename-file-extensions-bulk/

Может быть, это поможет.

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