Jak mogę dodać folder zawierający średnik do ŚCIEŻKI Windows?


3

Zauważyłem, że średnik ;jest poprawnym znakiem dla nazw plików i katalogów Windows (NTFS).

Średnik jest jednak używany jako separator elementu dla PATHzmiennej środowiskowej.

Powiedzmy, że mam folder o nazwie C:\main() {printf('%d', 42);}” (hej, fajny, zawiera także znak procentu) - jak mogę dodać ten folder do systemu PATH?


Unikaj używania średników w nazwach folderów, wtedy nie będziesz mieć problemu!
Lee Taylor,

Cóż, powinieneś kontrolować foldery, które dodajesz do PATH. Wydaje się dziwne, że masz w nich foldery ze średnikami itp.
Lee Taylor,

Jak już powiedziano, naprawdę powinieneś unikać używania takich znaków w ścieżkach - wyzwalają one wiele niczego niepodejrzewających programów, których nie trzeba kod źródłowy, aby przepisać, aby je obsłużyć. Sugerowałbym, jeśli musisz mieć tego rodzaju ścieżkę do określonego programu, napisz plik wsadowy, który ustawia ścieżkę potrzebną dla tego jednego programu, wykonuje ten jeden program, a następnie przywraca ścieżkę do normy po zakończeniu. Następnie możesz umieścić ten plik wsadowy na ścieżce, do której chcesz zadzwonić, gdy chcesz uruchomić ten program, bez blokowania ścieżki dla wszystkich innych programów.
CM

Odpowiedzi:


4

Użycie podwójnych cudzysłowów działa dla mnie:

SET PATH=%PATH%;"C:\main() {printf('%d', 42);}"

2

Uzyskaj krótką nazwę folderu za pomocą DIR / X, a następnie dodaj tę krótką nazwę do ŚCIEŻKI. Wygląda na to, że ŚCIEŻKA działa poprawnie przy znaku%


Bah. Krótkie imiona. Ale tak, wydaje się, że jest to możliwe rozwiązanie, jeśli można określić krótką nazwę.
Martin

1
Masz na myśli, jak byś dodał, gdyby użytkownik wyłączył generowanie krótkich nazw? support.microsoft.com/kb/121007
Martheen Cahya Paulo

1
Albo przez utworzenie punktu połączenia lub dowiązania symbolicznego o prostej nazwie, a następnie dodanie go do ŚCIEŻKI.
Martheen Cahya Paulo,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.