В bash
Я пытаюсь сделать glob
список файлов из каталога, которые будут представлены в качестве входных данных для программы. Однако я также хотел бы предоставить этой программе список имен файловBash извлечение файла basename из длинного пути
files="/very/long/path/to/various/files/*.file"
Так что я мог бы использовать его так.
prompt> program -files $files -names $namelist
Если glob
дает мне:
/very/long/path/to/various/files/AA.file /very/long/path/to/various/files/BB.file /very/long/path/to/various/files/CC.file /very/long/path/to/various/files/DD.file /very/long/path/to/various/files/ZZ.file
Я хотел бы получить список AA BB CC DD ZZ кормить мою программу без длинного имени пути и расширения файла. Однако я понятия не имею, как начать там! Любой намек высоко ценится!
+1 для упоминания '$ {file ## * /}' вместо вызова 'basename' – jbh
не могли бы вы дать мне ссылку, откуда я могу прочитать все эти форматы соответствия строк ... –
Можете ли вы хотя бы объяснить, почему один не следует использовать basename? И что на самом деле делал/сопоставлял этот шаблон манипуляции с строкой? –