Предполагая bash, вам нужно cd
в каталог, в котором находится скрипт, перед запуском ls
.
Вы можете однострочить его следующим образом:
cd "$(dirname "$0")"
$0
это относительный путь скрипта, т.е. все, что вы использовали в командной строке для его вызова.dirname
удаляет имя файла из пути.
$()
- это расширение значения для подачи в cd
, и все кавычки необходимы для обработки таких вещей, как пробелы в путях.