kiedy po raz pierwszy dotknąłem Linuksa, pomyślałem, że jest to polecenie dotyczące hasła i /devjest coś o rozwoju (kody źródłowe lub coś w tym stylu)
LiuYan
2
Och, dev oznacza urządzenie ?! Zawsze przemyślane do tej pory oznaczało po prostu dev ... Myślałem, że dev / null to miejsce, w którym programiści Linuksa umieszczają specjalny obiekt null. Dzięki @LiuYan 刘 研
1owk3y
@LiuYan 刘 研 - Całkowicie zgadzam się, że jest to mylące, jeśli nie wiesz. Musiałem to sprawdzić. Oznacza „Drukuj katalog roboczy” dla każdego, kto jest zaskoczony, dlaczego wybrał to polecenie dla tej funkcji.
squarecandy
1
@squarecandy, Dlatego unikam używania akronimów, jak to możliwe, kiedy się starzeję, nawet akronim nie ma w tej chwili dwuznacznego znaczenia - nigdy nie wiesz, jakie znaczenie będzie miało w przyszłości. Walter powiedział żart lalki Jeffa Dunhama : To, co dzieje się w Waszyngtonie, pozostaje na YouTube! , Gdzie środki DC D igital C Amera ale oznacza również, Washington, D istrict od C olumbia w żart.
LiuYan 研 研
11
Chociaż ogólna odpowiedź brzmi pwd: pamiętaj, że może to dać różne wyniki w zależności od tego, w jaki sposób dotarłeś do danego katalogu i czy trasa zawierała dowiązania symboliczne.
Na przykład, jeśli masz nazwany katalog reali dowiązanie symboliczne do tego katalogu virtual, a ty cddo virtualkatalogu, to pwdpokaże tę virtualnazwę katalogu, nawet jeśli katalog, w którym aktualnie się znajdujesz, to real.
Aby pokazać prawdziwy katalog bazowy, użyj albo pwd -Plub readlink -f(dla dowolnej ścieżki):
$ mkdir prawdziwy
$ ln -s prawdziwy wirtualny
$ cd virtual
$ pwd
/ home / nazwa użytkownika / tmp / virtual
$ pwd -P
/ home / nazwa użytkownika / tmp / real
$ readlink -f.
/ home / nazwa użytkownika / tmp / real
Zauważ, że powłoki często zastępują pwdpolecenie własną wersją wewnętrzną, więc w moim systemie (RHEL6), mimo że pwd(1)strona podręcznika sugeruje, że --physicalto zadziała, a -Pponieważ działam, bashnie:
$ pwd - fizyczny
bash: pwd: -: niepoprawna opcja
pwd: wykorzystanie: pwd [-LP]
$ / bin / pwd --physical
/ home / nazwa użytkownika / tmp / real
$ / usr / bin / env pwd --physical
/ home / nazwa użytkownika / tmp / real
Jak powiedzieli inni, pwdzwykle wykonuje to dobrze. Chciałbym jednak dodać pomysł, który mi pomógł.
We wszystkich powszechnie używanych dziś powłokach można dostosować wygląd wiersza polecenia. Lubię dostosowywać mój, aby wyświetlał mi zarówno nazwę komputera, na którym pracuję, jak i mój katalog roboczy. W ten sposób zawsze wiem, gdzie jestem. (Część nazwy komputera pomaga mi zrozumieć, czy okno terminala, którego używam, zostało użyte do SSH do zdalnego serwera.) Na przykład, kiedy otwieram nowe okno terminala na moim laptopie, który nazywam Plastico, widzę to:
Plastico ~> cd Desktop/
Plastico ~/Desktop> cd ~/Sites/raygunrobot.com
Plastico ~/Sites/raygunrobot.com> cd /usr
Plastico /usr>
Widać, że to skrót mojego katalogu domowego jako ~. Uważam, że robienie tego dla moich podpowiedzi terminalowych jest niezwykle przydatne - zawsze wiem na pierwszy rzut oka dokładnie, gdzie jestem, nawet bardziej niż gdybym patrzył w okno Findera.
W tcsh robię to, dodając set prompt = 'Plastico %~%# '
do mojego pliku .tcshrc w moim katalogu domowym. Zrobiłem to również na ksh, dodając export PS1="Plastico $PWD $ "do mojego pliku .profile. Ale będąc użytkownikiem Linuksa, prawdopodobnie używasz Basha, z którym nie mam dużego doświadczenia (jestem takim dziwakiem). Ale wygląda na to, że mogę to zrobić, dodając PS1="Plastico \w $ "do mojego pliku .bashrc.
Edycja: Właśnie zauważyłem stany OP, którymi jesteś zainteresowany sh, a nie bash. No cóż; mam nadzieję, że ludzie uznają to za przydatne niezależnie.
To fajny pomysł. Może działać dobrze w przypadku prostego komputera stacjonarnego. Wygląda na to, że bardzo rzadko może się to przydać w przypadku bardzo głębokich katalogów, jeśli sam monit jest Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >lub coś takiego.
squarecandy
1
$ pwd
/your/current/directory
$
pwdpochodzi z katalogu roboczego drukowania .
Ze strony podręcznika systemu Linux:
Imię
pwd - wypisuje nazwę bieżącego / roboczego katalogu
Streszczenie
pwd [OPCJA] ...
Opis
Wydrukuj pełną nazwę pliku bieżącego katalogu roboczego.
-L , --logiczne
używaj PWD ze środowiska, nawet jeśli zawiera dowiązania symboliczne
-P , --fizyczne
unikaj wszystkich dowiązań symbolicznych
--Wsparcie
wyświetl tę pomoc i wyjdź
--wersja
wyświetla informacje o wersji i kończy działanie
UWAGA: twoja powłoka może mieć własną wersję pwd, która zwykle zastępuje opisaną tutaj wersję. Zapoznaj się z dokumentacją powłoki, aby uzyskać szczegółowe informacje na temat obsługiwanych przez nią opcji.
unix whereami
Odpowiedzi:
Spróbować
pwd
.źródło
/dev
jest coś o rozwoju (kody źródłowe lub coś w tym stylu)Chociaż ogólna odpowiedź brzmi
pwd
: pamiętaj, że może to dać różne wyniki w zależności od tego, w jaki sposób dotarłeś do danego katalogu i czy trasa zawierała dowiązania symboliczne.Na przykład, jeśli masz nazwany katalog
real
i dowiązanie symboliczne do tego kataloguvirtual
, a tycd
dovirtual
katalogu, topwd
pokaże tęvirtual
nazwę katalogu, nawet jeśli katalog, w którym aktualnie się znajdujesz, toreal
.Aby pokazać prawdziwy katalog bazowy, użyj albo
pwd -P
lubreadlink -f
(dla dowolnej ścieżki):Zauważ, że powłoki często zastępują
pwd
polecenie własną wersją wewnętrzną, więc w moim systemie (RHEL6), mimo żepwd(1)
strona podręcznika sugeruje, że--physical
to zadziała, a-P
ponieważ działam,bash
nie:źródło
Jak powiedzieli inni,
pwd
zwykle wykonuje to dobrze. Chciałbym jednak dodać pomysł, który mi pomógł.We wszystkich powszechnie używanych dziś powłokach można dostosować wygląd wiersza polecenia. Lubię dostosowywać mój, aby wyświetlał mi zarówno nazwę komputera, na którym pracuję, jak i mój katalog roboczy. W ten sposób zawsze wiem, gdzie jestem. (Część nazwy komputera pomaga mi zrozumieć, czy okno terminala, którego używam, zostało użyte do SSH do zdalnego serwera.) Na przykład, kiedy otwieram nowe okno terminala na moim laptopie, który nazywam Plastico, widzę to:
Widać, że to skrót mojego katalogu domowego jako
~
. Uważam, że robienie tego dla moich podpowiedzi terminalowych jest niezwykle przydatne - zawsze wiem na pierwszy rzut oka dokładnie, gdzie jestem, nawet bardziej niż gdybym patrzył w okno Findera.W tcsh robię to, dodając
set prompt = 'Plastico %~%# '
do mojego pliku .tcshrc w moim katalogu domowym. Zrobiłem to również na ksh, dodającexport PS1="Plastico $PWD $ "
do mojego pliku .profile. Ale będąc użytkownikiem Linuksa, prawdopodobnie używasz Basha, z którym nie mam dużego doświadczenia (jestem takim dziwakiem). Ale wygląda na to, że mogę to zrobić, dodającPS1="Plastico \w $ "
do mojego pliku .bashrc.Edycja: Właśnie zauważyłem stany OP, którymi jesteś zainteresowany sh, a nie bash. No cóż; mam nadzieję, że ludzie uznają to za przydatne niezależnie.
źródło
Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >
lub coś takiego.pwd
pochodzi z katalogu roboczego drukowania .Ze strony podręcznika systemu Linux:
źródło