У меня есть сценарий, который я создал, чтобы помочь с преобразованием видео, а затем загрузить его на наш сайт. Наши видео имеют стандартный формат для имени файла, чтобы помочь с правильной настройкой (день, месяц, год, т. Е. 09OCT2013.m4v). Они поступают в каталоги из года в год (т.е. 2013/окт/09OCT2013/09OCT2013.m4v). Прямо сейчас, мой скрипт открывается, запрашивая ввод пользователя за год, а затем месяц, а затем фактическое имя файла для этой папки. То, что я хочу сделать, - это взять файл, который уже был создан, отбросить его в скрипт, затем отделить его от сценария и поместить в соответствующий файл (т. Е. Отбросить файл 12JUN2012.m4v в скрипт и сценарий автоматически помещает его в 2012/jun/12JUN2012 /). Есть ли какой-либо возможный способ сделать это в терминале? Пожалуйста, дайте мне знать, если какая-либо часть моего вопроса неясна.Сплит имя файла до определения переменных
0
A
ответ
0
Предполагая, что вы используете bash
:
for file in "[email protected]"
do
dd=${file:0:2}
mm=${file:2:3}
yy=${file:5:4}
mv "$file" "$yy/$mm/$file"
done
Если файл должен быть перемещен дальше, или поставляются с большим количеством путевого именем, вы можете настроить скрипт, но основная идея разделения последнего компонента имя файла с использованием нотации подстроки является хорошим.
Смежные вопросы
- 1. Сплит имя файла из пути в C
- 2. Определения getJSON и определения переменных
- 3. Сплит Полное имя
- 4. Правила определения переменных для переменных
- 5. TI AM335x имя файла заголовка определения заголовка?
- 6. Сплит-панель до cwd
- 7. Сплит строка из файла
- 8. Массивы определения переменных
- 9. Bash переменных порядка определения
- 10. Определения переменных EMU8086
- 11. Имя переменных переменных объекта PHP?
- 12. Запись переменных партии в имя файла
- 13. Сплит fillePath и имя файла с использованием шаблона и шаблона
- 14. Сплит имя файла и принимать только одну часть для использования
- 15. Сплит файла чтения C++
- 16. Сплит два файла
- 17. Сплит имя столбца и значения
- 18. Шаблон файла определения определения сборки
- 19. Вход на основе файла для определения переменных графа
- 20. Получить имя определения val
- 21. Сплит-номера в IP в нескольких переменных
- 22. CSV - сплит полное имя на имя и фамилию
- 23. Извлечь имя файла до первой строки
- 24. Как распечатать имя файла от ... до
- 25. Определения переменных функций внутри цикла?
- 26. Использование класса, методы определения переменных
- 27. Различные способы объявления/определения переменных?
- 28. Вопрос определения переменных в функциях
- 29. Легкий способ определения нескольких переменных
- 30. Декларация структуры до определения
Это сработало отлично! Благодаря! Мне пришлось найти способ получить путь к файлу от самого файла, но как только я понял это, мне было хорошо. – calebsurface
'basename' - это классический метод удаления пути (и, необязательно, суффикс), а' dirname' - классический метод для получения каталога из пути. В наши дни '$ {file ## * /}' работает примерно так же, как 'basename' (кроме удаления суффикса), а' $ {file%/*} 'делает как' dirname', за исключением случаев, когда нет имя каталога ('dirname' yields' .', но '$ {file%/*}' дает имя файла). –