Используйте массивы и не храните шаблоны подстановки имен файлов в переменных (вместо этого разрешите им расширяться в соответствующие пути):
component_dirs=( 'src/component '{a,b,c} )
component_data=()
component_code=()
for dir in "${component_dirs[@]}"; do
component_data+=( "$dir"/*.txt )
component_code+=( "$dir"/*.c )
done
Тогда вы могли бы сделать, например,
cat "${component_data[@]}"
, если этот массив не содержит сотни или тысячи имен путей.
Используйте udevadm info
для запроса атрибутов устройства, затем создайте правило udev, которое создаст символическую ссылку в /dev/
для легкого доступа к устройству по вашему пользовательскому имени. См.https://wiki.archlinux.org/index.php/Udev#udev_rule_example