У мене є сценарій, коли в папці є два файли:
1) Foo bar.pdf
2) Ще один файл.pdf
Я зливаю обидва файли в один. Отриманий файл повинен бути названий "Foo.pdf".
Отже .sh файл міститиме таку функцію:
Перевірте, чи містить * .pdf "bar" // перевірте всі файли PDF у папці на слово "bar" у назві файлу.
Якщо TRUE ($ value = "Foo.pdf") // витяг "Foo" з імені файлу
mkfile = $ value.pdf
Таким чином, я закінчу щось таким:
(Каталог 1)
ФАЙЛ 1: Foo Blah Blah 123.pdf
ФАЙЛ 2: Ще один файл.pdf
... запустити сценарій ...
ФАЙЛ 3: Foo.pdf // створений файл
Сподіваюся, що це має сенс? Чи може хтось, будь ласка, вказати мене в правильному напрямку?
bashаналіз параметрів: у шляху до файлу${FilePath%/*}- це шлях до каталогу,${FilePath##*/}це ім'я файлу та[ "${FileName#*bar} != "SFileName" ]тести наbarім'я файлу. Ви перейменовуєте вmv, але будь-який шлях до каталогу в старому імені повинен бути присутнім у новому (інакше файл буде перейменований та переміщений у поточний каталог).