Piszę skrypt w Swift i chcę go zmodyfikować niektóre pliki, które zawsze istnieją w tym samym katalogu, co sam skrypt. Czy istnieje sposób, aby uzyskać ścieżkę do skryptu z samej siebie? Próbowałem:Uzyskaj ścieżkę do skryptu Swift z poziomu skryptu
print(Process.arguments)
Ale to wyjść tylko ścieżkę, która została faktycznie przekazane do skryptu, który może być w pełni rozwiązany drogą, tylko nazwę pliku, lub coś pomiędzy.
Mam zamiar uruchomić skrypt z swift /path/to/my/script.swift
.
Pamiętaj, że to się nie powiedzie, jeśli użyjesz # #! i jest w PATH (ale pasuje do sposobu, w jaki OP mówi o uruchomieniu skryptu, więc to jest w porządku) –
@RobNapier co masz na myśli? Mam '#!/Usr/bin/env swift' na górze, ale to nie jest w moim' $ PATH' –
Mam na myśli, jeśli script.swift jest w Twojej PATH, to po prostu wywołanie "script.swift" sprawi, że wygląda na to, że skrypt znajduje się w jakimkolwiek katalogu, w którym aktualnie się znajdujesz. –