Яка різниця між виконанням такого сценарію:
./test.sh
та виконання такого сценарію:
. test.sh?
Я спробував простий, дворядковий сценарій, щоб побачити, чи зможу я знайти, чи є різниця:
#!/bin/bash
ls
Але обидва . test.shі ./test.shповернули ту саму інформацію.
test.shне те саме, що ./test.sh(перший викликає PATHпошук), так . test.shі . ./test.shвідрізняються однаково (колишній викликає PATHпошук). Здається, багато снарядів неявно включаються .в кінці PATHпід час .пошуку шляху, але така поведінка не є стандартною. Таким чином, більш точно порівняти test.shпроти . test.shі ./test.shпроти . ./test.sh.