Я создаю небольшой скрипт оболочки, и я хочу хранить все файлы с тем же суффиксом в таблице.
Мне нужно что-то вроде этого:
path=/home/user/Documents
suffix="_suffix.txt"
, а затем функцию, которая создает файлы имен таблиц и заполняет ее файлом в $ path суффикс $ suffix. результат:
echo files[0]
-> /home/user/Documents/project_suffix.txt
echo files[1]
-> /home/user/Documents/html_suffix.txt
echo files[2]
-> /home/user/Documents/jokes_suffix.txt. и т. д.
Я не хочу иметь в своем списке другие файлы, такие как «budget.txt»
Спасибо за ваши ответы!
)То, что вы называете таблицей, обычно называется массивом или картой. В bash для создания такого массива:
path="/home/user/Documents"
suffix="_suffix.txt"
files=( "$path"/*"$suffix" )
* представляет собой массив , который расширяется оболочкой ко всем соответствующим именам файлов (которые имеют $path перед ним и $suffix после). Скобки (()) преобразуют расширенные имена файлов в массив.
Затем вы можете получить доступ к каждому элементу (индексируется от 0, а не 1), используя "${files[0]}", "${files[1]}" и т. Д.
Например:
$ path=/tmp
$ suffix=_amd64.deb
$ files=( "$path"/*"$suffix" )
$ echo "${files[1]}" "${files[0]}"
/tmp/vim-athena_7.4.640-1~ppa1~t_amd64.deb /tmp/vim_7.4.640-1~ppa1~t_amd64.deb