Одна проблема с использованием:
ABSOLUTE_PATH=$(cd ${possibleDirectory}; pwd)
означает, что, если $ {возможный_каталог} не существует, ABSOLUTE_PATH будет установлен в текущий каталог. Что, вероятно, НЕ то, что вы хотите или ожидаете.
Я думаю, что использование этой версии может быть более желательным в целом:
ABSOLUTE_PATH=$(cd ${possibleDirectory} && pwd)
Если $ {возможный_каталог} не существует или недоступен из-за отсутствия разрешений на доступ к каталогу, ABSOLUTE_PATH будет содержать пустую строку.
Преимущество этого состоит в том, что вы можете проверить пустую строку или позволить ей потерпеть неудачу естественным образом, в зависимости от обстоятельств. По умолчанию текущий каталог в случае неудачной команды 'cd' может привести к очень неожиданным и, возможно, катастрофическим результатам (например, rm -rf "$ ABSOLUTE_PATH")