Удалить все нелегальные символы из всех имен файлов в данной папке

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

Я программирую на окнах, но это немного из глубины OSX.

Я нашел это (процесс автоматизации для удаления плохих символов из одной строки), но нужно что-то, что будет итератировать и легко использоваться и распространяться между пользователями в сети mac.

Благодарим вас за помощь

Единственными символами, которые не разрешены в именах файлов в OS X, являются NUL и либо ASCII-косая черта, либо двоеточие ASCII в зависимости от контекста. Символы, которые отображаются в виде косых черт в Finder, отображаются как двоеточия в оболочках и наоборот.

Вы могли бы использовать команды оболочки, как это:

for f in *;do mv "$f" "${f//[^0-9A-Za-z.]}";done find . -type f|while read f;do b=${f##*/};mv "$f" "${f%/*}/${b//[^[:alnum:].]}";done brew install rename;find . -type f -exec rename 's/[^0-9A-Za-z.\/]/-/g;s/-+/-/g' {} \; rename -z * 

Или просто используйте приложение, например Name Mangler :

Я завернул это в приложение, так что вы можете легко перераспределить его. Он попросит папку, а затем дезинформирует имена файлов.

Загрузите его здесь .

Если эта ссылка когда-либо опускается, вы можете создать следующее приложение в Automator:

Все, что вам нужно сделать, это:

  • Попросите элементы Finder (вы должны разрешить только папки)
  • Задайте этот результат как переменную
  • Запустите сценарий оболочки (вам нужно передать ввод как аргументы вместо stdin )

     for f in "$1"/*; do dir="$(dirname "$f")" file="$(basename "$f")" mv -- "$f" "${dir}/${file//[^0-9A-Za-z.]}" done 
  • Где находится клиент удаленных рабочих столов OS X
  • Получить имя активного пользователя в скрипте в Mac OS
  • Ошибка подсказки Bash при нажатии стрелки вверх
  • Как закрыть приложения Mac OS X после закрытия последнего окна
  • Как получить доступ к внешнему жесткому диску с NTFS из моего iMac бесплатно?
  • Есть ли редактор тегов ID3 ​​для iTunes на OS X?
  • Где Mac OS X хранит информацию об ассоциации файлов?
  • Предотвратите создание MacOS файлов * и ._ *.
  • Могу ли я создать DVD-диск из папки видео-ts
  • Android эмулятор замораживания OS X v10.9 (Mavericks) с HAXM
  • Измените каталог cd на cdd другого терминала
  • Interesting Posts

    Есть ли способ дублировать панель задач на нескольких мониторах в Windows 7?

    программно добавить id в файл R.id

    Сохранение пользовательских атрибутов в NSAttributedString

    Я реализовал черту для другого признака, но не могу вызывать методы из обеих черт

    Почему объекты R не печатаются в функции или в цикле «для»?

    Как получить доступ к свойствам стиля псевдоэлементов с помощью jQuery?

    Только два закругленных угла?

    Wix Взаимодействие с условиями, свойствами и пользовательскими действиями

    Сериализация / десериализация с streamом памяти

    Как добавить манифест info в проект delphi

    Как получить текущий URL-адрес в шаблоне Django?

    Зная, когда использовать разрез в prologе

    Как увидеть попытки подключения, отклоненные брандмауэром в режиме реального времени?

    Наследование C ++ и функция переопределения

    Шаблоны проектирования: абстрактный завод по сравнению с заводским методом

    Давайте будем гением компьютера.