Vad betyder ./ i Linux?

Få åtkomst till och kör kommandon i valfri katalog utan att lämna den aktuella aktuella katalogen med './' i terminalen

För alla konsolentusiaster ./ kan verka ganska bekant. Det är en av många fantastiska saker med Linux som gör det enkelt att använda från terminalen.

Om du inte vet vad ./ betyder att vi har dig täckt. Den här artikeln kommer att förklara i detalj vad som gör ./ i Linux betyder och vad gör det i Linux-systemet.

Betydelsen av ./ till poängen

Den enkla innebörden av ./ är 'Aktuell katalog’. Det är så enkelt som detta. Men vänta, det har mer användbara och intressanta dimensioner.

För alla konsolentusiaster, de små detaljerna i detta ./ symbol, är mycket viktiga och specifika med användarhierarkin som kan gå obemärkt förbi många gånger av en nybörjare av Linux.

När som helst när du använder Linux från kommandoraden, befinner du dig någonstans i filsystemhierarkin. När du arbetar som icke-rootanvändare befinner du dig troligen i din hemkatalog.

Oavsett vad din nuvarande katalog är kan du behöva hantera filer som finns utanför din nuvarande katalog. Så att ändra katalogen då och då kan vara ett tråkigt jobb. För att göra detta enklare, använd ./ kan visa sig vara ett effektivt sätt att hantera och ändra flera filer från din nuvarande katalog. Du behöver inte ändra katalogerna flera gånger, vilket kommer att vara en tidsbesparande och produktiv metod.

Förståelse ./ i bitar

Låt oss försöka förstå innebörden av ./ i separata segment av . (prick) och / (snedstreck).

. (punkt):- Med sammanhanget till frågan vi diskuterar i den här artikeln . (prick) betyder helt enkeltAnvändarens aktuella katalog‘.

Exempel:

gauravv@ubuntu:~$ ls -al totalt 179572 drwxr-xr-x 86 gauravv gauravv 266240 12 sep 09:10 . drwxr-xr-x 4 root root 4096 4 sep 18:29 .. drwxr-xr-x 2 gauravv gauravv 65536 15 jul 2018 100CANON 

I koden ovan, i den markerade raden kan du se pricken (.) i slutet. Det betyder att detta är min nuvarande katalog.

/ (snedstreck):- När vi lägger till en / (snedstreck) till .(prick) det ser helt enkelt till att du inte använder en fil. Det är samma sak som att lägga till / till något annat katalognamn.

Förståelse ./ med ett exempel

Låt oss ta ett exempel och förstå ./ med fler förtydliganden.

Låt oss anta att du vill använda nano textredigerare (en textredigerare för konsolen) istället för den grafiska textredigeraren. Du kommer att arbeta på konsolen helt. När du börjar arbeta med editorn placeras du i Hemkatalog som standard.

Men tänk om dokumentet som du vill redigera finns i en annan katalog. Det finns en katalog som heter Plats och här ligger ditt dokument cool.txt. Så platsen för detta cool.txt filen blir '/home/gaurav/space/cool.txt‘.

För att öppna den här filen i nano, du kan säkert skriva CD[Directory_name_where_file_located] och då nano cool.txt.

Men för att göra det mer effektivt och enkelt kan vi bara skriva nano ./space/cool.txt.

Titta på utdata nedan för att bättre förstå exemplet.

gaurav@ubuntu:~$ pwd /home/gaurav gaurav@ubuntu:~$

Här är hemkatalogen '/hem/gaurav’. Och filen som ska redigeras (cool.txt) ligger på '/home/gaurav/space‘.

Men låt oss säga att jag inte vill ändra min nuvarande katalog (/hem/gaurav) och arbeta direkt från min hemkatalog. Jag gör det enligt följande.

gaurav@ubuntu:~$ nano ./space/cool.txt GNU nano 2.9.3 ./space/cool.txt Ändrad Hej jag heter tony stark, jag är en superhjälte.
gaurav@ubuntu:~$ cat ./space/cool.txt Hej jag heter Tony stark och jag är en superhjälte. gaurav@ubuntu:~$ 

Här redigerade jag filen från min hemkatalog utan att ändra sökvägen.

Den största fördelen med att använda ./ är att om du inte vill navigera bort från din nuvarande mapp kan du fortfarande manipulera filer runt dig.

Om du bara hade skrivit nano cool.txt, skulle du befalla nano för att öppna en fil i hemkatalogen (/hem/gaurav) det skulle returnera ett fel eftersom filen inte finns i hemkatalogen. Och det är anledningen till att du använder nano ./space/cool.txt

Kör program med ./

./ kan användas för att köra de körbara filerna i ett program. Vi kommer att förstå detta med ett exempel.

Om jag vill köra ett C-program i min $PATH (använda sig av echo $PATH kommando för att få din PATH), kompilerar jag bara C-programmet. Vid kompilering, en körbar fil med namnet a.ut kommer att skapas i den aktuella katalogen. För att köra detta program ska jag köra den körbara filen a.ut. För att köra detta C-program ska jag bara skriva ./a.ut för att köra C-programmet.

gaurav@ubuntu:~/space$ sudo gcc demo.c [sudo] lösenord för gaurav: gaurav@ubuntu:~/space$ ./a.out gaurav@ubuntu:~/space$ 

I detta sammanhang föregå kommandot med ./ säger effektivt "glöm PATH, jag vill att du bara ska leta i den aktuella katalogen".

På samma sätt kan du instruera systemet att endast titta in på en annan specifik plats genom att föregå kommandot med en relativ eller absolut sökväg som:

../ betyder överordnad katalog eller ./work/demo.c vilket innebär att leta efter filen demo.c i den namngivna katalogen arbete.

Slutsats

./" används i ett sökväg för att indikera den aktuella katalogen. Den kan också köra ett skript från den aktuella arbetskatalogen. Det är en tidsbesparande praxis att använda ./ i din $PATH eftersom det gör att du kan ändra filer som inte finns i din nuvarande katalog och det också utan att ens lämna din nuvarande arbetskatalog.