Есть следующая иерархия директорий:
~/AAA
~/ААА/bash
~/AAA/site
~/BBB
~/BBB/bash
~/BBB/site
--//--
~/NNN
~/NNN/bash
~/NNN/site
Внутри директории bash/ всегда лежат файлы с расширением .sh.
Чаще всего я нахожусь в директории site/.
Я хочу запускать скрипты алиасом. Сделал ~/.bash_aliases. Прописал так:
alias get1="bash ../bash/111.sh"
alias get2="bash ../bash/222.sh"
alias getN="bash ../bash/NNN.sh"
Первая проблема. Внутри каждого скрипта есть файл с переменными.
Я подключаю его так:
. ./variables.sh
Но при запуске алиаса, например get1, я получаю сообщение об ошибке: variables.sh: No such file or directory. Я конечно могу выставить абсолютный путь. Но можно ли сделать в таком случае код универсальным, чтобы в каждом отдельном файле не прописывать абсолютный путь?
Второй вопрос. А нельзя ли сделать путь внутри алиаса таким, чтобы находясь в любой поддириктории корневой директории, например в ~/BBB, или в ~/BBB/bash, алиас срабатывал верно?
То есть если я нахожусь внутри ~/BBB, не важно на какой глубине, скрипт из ~/BBB/bash/ отзывался на команду?
Далее, если бы я копировал bash/ в новую директорию ~/CCC/, скрипты бы работали автоматом.
Если можно такое организовать, куда копать? Что искать?