Нужен сценарий оболочки для копирования файлов с длинными именами и именами

У меня есть каталог файловой системы NTFS, который содержит файлы с короткими и длинными именами, я ввел команду копирования для этой директории, которая будет скопирована в файловой системе Ext2, файлы с короткими именами скопированы без проблем, но файлы с длинными именами были сбой, Я получил ошибку «Имя файла слишком долго», потому что число этих файлов слишком велико. Мне нужен сценарий оболочки для решения проблемы в два этапа:

1-Copy, а затем удалите скопированные файлы с короткими именами (я знаю, что команда move делает это, но я хочу использовать команду копирования)

2 – Удалите от 15 до 20 символов с конца имен оставшихся файлов с длинными именами, после чего я повторю шаги до тех пор, пока все файлы не будут скопированы.

Спасибо.

  • В Bash, когда к псевдониму, когда скрипту, а когда писать функцию?
  • Проблема расщепления IFS
  • Какой смысл перенаправлять вывод grep на / dev / null?
  • sed специальный символ заменить не работает в сценарии оболочки
  • Файловые дескрипторы и сценарии оболочки
  • Bash один вкладыш для изменения параметров конфигурации
  • Найти и заменить рекурсивный
  • Как я могу разбить буквы слова с четырьмя буквами в строке?
  • One Solution collect form web for “Нужен сценарий оболочки для копирования файлов с длинными именами и именами”

    Чтобы скопировать и усечь имена файлов на лету, вы можете сделать следующее:

    cd /src && LC_ALL=C pax -rws'|\([^/]\{255\}\)[^/]*|\1|g' ./* /dst/ 

    для усечения до 255 байтовых компонентов пути.

    Обратите внимание, что он может обрезать имя файла в середине символа, если в этих именах файлов есть многобайтные символы.

    Он также обновит цели символических ссылок (хотя я не уверен, что ntfs поддерживает символические ссылки).

    Обратите внимание, что вы можете получить файлы, переписывающие друг друга, если несколько файлов имеют одинаковые первые 255 байт.

    Interesting Posts

    Как добавить путь «настраиваемых» каталогов к левой панели в Cinnamon File Manager

    Справка с строкой «Обязательная остановка:» в сценарии инициализации типа System-V. Заголовок LSB

    Как проверить, когда истекут метаданные yum?

    Как я могу создать сценарий создания одного раздела, который использует все устройство?

    Символическая ссылка не работает так, как ожидалось при изменении пользователя

    Использование диспетчера пакетов apt отказывается от обновления для определенного пакета

    Pamtester автоматизирует тестирование паролей

    Я хочу перечислить все файлы на моем Linux-сервере, которые старше 31 декабря 2014 года.

    Arch Linux Gnome 3 медленный вход -> переход на рабочий стол и 2 сеанса gnome при загрузке

    Поиск рекурсивно большого файла

    Как использовать `ожидать` с` zipcloak` II?

    Почему DISPLAY не может быть установлен на имя хоста?

    Таймер ключей был отключен при попытке добавить открытый ключ GPG

    Каковы способы создания собственного дистрибутива linux?

    CSF не блокирует порт при удалении из csf.conf

    Linux и Unix - лучшая ОС в мире.