Po udanym budowaniu.plik rozszerzenia cpp, istnieje potrzeba wykonania pliku a.out przy użyciu polecenia ./a.out. Co oznacza ./ reprezentować? Czy jest to po prostu sposób na wykonanie go na terminalu? Czy istnieje dalsze wyjaśnienie tego, co reprezentuje?
Odpowiedzi:
3 dla odpowiedzi № 1Nie jest to związane z c ++. Jest przeznaczony dla systemów operacyjnych takich jak Unix. ./ mówi
spójrz w bieżącym katalogu na mój skrypt, zamiast patrzeć na wszystko katalogi określone w
$PATH
1 dla odpowiedzi nr 2
.
jest bieżącym katalogiem (np ..
jest rodzicem bieżącego katalogu) ./a.out
oznacza "uruchom a.out
program z bieżącego katalogu ".
To jest dla ludzi, którzy nie mają .
na ich drodze. To dobry pomysł, jeśli dzielisz swoje pudełko lub jesteś nadmiernie paranoidalny, ale w przypadku domowego pudła prawdopodobnie łatwiej jest po prostu Dodaj .
do końca ścieżki, więc nie musisz używać wersji długiej.
1 dla odpowiedzi nr 3
Jeśli zrobisz ls -al
, wyświetla listę plików i folderów bieżącego katalogu, zauważysz, że pokazuje a .
jako wpis.
Odpowiada to odniesieniu do bieżącego katalogu.
Mówimy powłoce do wykonania a.out
plik, który jest względny do bieżącego katalogu, kiedy mówimy ./a.out
1 dla odpowiedzi nr 4
Po wpisaniu polecenia w powłoce systemu Linux, aby zdecydować, co zrobić, powłoka najpierw sprawdza, czy istnieje /
w tym. Jeśli nie, szuka:
- Wewnętrzne polecenie powłoki.
- Plik wykonywalny w niektórych katalogach wymienionych w
$PATH
Zmienna środowiskowa.
Jeśli tam jest /
w nazwie szuka zawsze pliku o tej nazwie.
I .
, jak zapewne wiesz, jest bieżącym katalogiem.
Więc ./
robi kilka rzeczy:
- Zapobiega interpretowaniu polecenia przez powłokę jako powłokę wbudowaną.
- Zapobiega szukaniu przez program powłoki w programie
$PATH
. - Powoduje, że powłoka szuka programu tylko w bieżącym katalogu.