Какво означава ./ в Linux?

Достъп и изпълнение на команди във всяка директория, без да напускате текущата текуща директория с „./“ в терминала

За всички ентусиасти на конзолите ./ може да изглежда доста познато. Това е едно от многото страхотни неща за Linux, което го прави лесен за използване от терминала.

Ако не знаете какво ./ означава, че сме ви покрили. Тази статия ще обясни подробно какво прави ./ в Linux означава и какво прави в системата Linux.

Значението на ./ към основния въпрос

Простият смисъл на ./ е "Текуща директория‘. Това е толкова просто. Но чакайте, той има по-полезни и интересни измерения.

За всички конзолни ентусиасти, малките детайли в това ./ символ, са много важни и специфични за потребителската йерархия, която може да остане незабелязана много пъти от начинаещ потребител на Linux.

По всяко време, когато използвате Linux от командния ред, вие се намирате някъде в йерархията на файловата система. Когато работите като не-root потребител, най-вероятно се намирате във вашата домашна директория.

Независимо каква е текущата ви директория, може да се наложи да обработвате файлове, които се намират извън текущата ви директория. Така че промяната на директорията от време на време може да е досадна работа. За да улесните това, използвайте ./ може да се окаже ефективен начин за работа и промяна на множество файлове от текущата ви директория. Не е необходимо да сменяте директориите няколко пъти, което ще бъде метод за пестене на време и продуктивен метод.

Разбиране ./ на парчета

Нека се опитаме да разберем значението на ./ в отделни сегменти на . (точка) и / (наклонена черта).

. (точка):- В контекста на въпроса, който обсъждаме в тази статия, . (точка) просто означава „Текуща директория на потребителя‘.

пример:

gauravv@ubuntu:~$ ls -al общо 179572 drwxr-xr-x 86 gauravv gauravv 266240 12 септември 09:10 . drwxr-xr-x 4 root root 4096 4 септември 18:29 .. drwxr-xr-x 2 gauravv gauravv 65536 15 юли 2018 г. 100CANON 

В горния код в маркирания ред можете да видите точката (.) накрая. Това означава, че това е текущата ми директория.

/ (наклонена черта):- Когато добавим a / (наклонена черта) към .(точка) той просто гарантира, че не работите с файл. Същото е като добавянето / към всяко друго име на директория.

Разбиране ./ с пример

Нека вземем пример и да разберем ./ с повече уточнения.

Да предположим, че искате да използвате нано текстов редактор (текстов редактор за конзолата) вместо графичния текстов редактор. Ще работите изцяло върху конзолата. Когато започнете работа с редактора, вие се поставяте в Домашна директория по подразбиране.

Но да предположим, че документът, който искате да редактирате, е в друга директория. Има директория с име пространство и тук е вашият документ cool.txt. Така че пътят на местоположението на това cool.txt файлът става „/home/gaurav/space/cool.txt‘.

За да отворите този файл в нано, със сигурност бихте могли да напишете cd[Directory_name_where_file_located] и тогава nano cool.txt.

Но за да го направим по-ефективно и лесно, можем просто да напишем nano ./space/cool.txt.

Вижте изходите по-долу, за да разберете по-добре примера.

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

Тук началната директория е „/home/gaurav‘. И файлът за редактиране (cool.txt) се намира на „/home/gaurav/space‘.

Но да кажем, че не искам да променя текущата си директория (/home/gaurav) и директно работи от моята домашна директория. Ще го направя по следния начин.

gaurav@ubuntu:~$ nano ./space/cool.txt GNU nano 2.9.3 ./space/cool.txt Променен Здравей, казвам се Тони Старк и съм супергерой.
gaurav@ubuntu:~$ cat ./space/cool.txt Здравейте, казвам се Тони Старк, аз съм супергерой. gaurav@ubuntu:~$ 

Тук редактирах файла от самата си домашна директория, без да променям пътя.

Основното предимство на използването ./ е, че ако не искате да излезете от текущата си папка, все още можете да манипулирате файловете около вас.

Ако бяхте написали само nano cool.txt, ти ще командваш нано за да отворите файл в началната директория (/home/gaurav) ще върне грешка, тъй като файлът не съществува в началната директория. И това е причината да използвате nano ./space/cool.txt

Изпълнение на програми с ./

./ може да се използва за стартиране на изпълними файлове на програма. Ще разберем това с пример.

Ако искам да стартирам програма на C в моя $PATH (използвайте ехо $PATH команда, за да получите вашия PATH), просто ще компилирам програмата C. При компилация, изпълним файл с име a.out ще бъде създаден в текущата директория. За да изпълня тази програма, ще стартирам изпълнимия файл a.out. За да стартирам тази програма на C, просто ще напиша ./a.out за изпълнение на програмата C.

gaurav@ubuntu:~/space$ sudo gcc demo.c [sudo] парола за gaurav: gaurav@ubuntu:~/space$ ./a.out gaurav@ubuntu:~/space$ 

В този контекст добавянето на командата с ./ ефективно казва „забравете за PATH, искам да търсите само в текущата директория“.

По същия начин можете да инструктирате системата да търси само друго конкретно място, като добавите пред командата относителен или абсолютен път, като например:

../ означава Родителска директория или ./work/demo.c което означава, че потърсете файла демо.в в директорията на име работа.

Заключение

./“ се използва в име на път, за да посочи текущата директория. Може също да стартира скрипт от текущата работна директория. Практиката за спестяване на време е да използвате ./ във вашия $PATH, тъй като ви позволява да променяте файлове, които не присъстват в текущата ви директория, и това също, без дори да напускате текущата си работна директория.

Категория: Linux