Разверните переменную, содержащую префикс, который является именем каталога, содержащего все файлы, указав расширение файлов - PullRequest
0 голосов
/ 23 февраля 2020

У меня есть каталог temp_sources, содержащий файлы Fortran .f90.

Я пытаюсь развернуть шаблон *.f90 для печати, используя каталог temp_sources в качестве префикса для всех файлов Fortran90.

Подводя итог, я хотел бы сохранить в переменной:

temp_sources/file1.f90
temp_sources/file2.f90
temp_sources/file3.f90
...
temp_sources/file11.f90

Я пытался сделать в сценарии, который принимает 2 аргумента (первый для каталога, то есть temp_sources и второй для *.90)

dir1="$dir1"
# Adding a slash for directory if not present
[[ "$dir1" != */ ]] && dir1=$dir1"/"
# Try to expand the files *.f90
files=( "$dir1${@:2:$#-2}" )
# Try to print the list with directory name as prefix
echo "$files"

Но только в отпечатках (с последним эхом): temp_sources/*.f90

Не расширяет список .f90 файлов в temp_sources каталог в качестве префикса.

Я не знаю, как получить этот список с таким именем каталога.

1 Ответ

1 голос
/ 23 февраля 2020

Попробуйте с

files=( "$dir1"${@:2:$#-2} )

Вы хотите, чтобы оболочка обрабатывала расширение *, поэтому ее не следует заключать в скобки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...