att använda "cd" i terminalen

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
mannealm
Inlägg: 802
Blev medlem: 17 jun 2007, 21:49
Ort: Halmstad

att använda "cd" i terminalen

Inlägg av mannealm »

Hej. Vad är det för skillnad mellan exempelvis "cd ./etc" och "cd /etc", dvs vad betyder den där punkten innan "/"?
Nybliven nörd!
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

SV: att använda "cd" i terminalen

Inlägg av mcNisse »

. betyder den katalogen som du står i.

cd ./etc
Byter katalog till etc som finns i den katalogen som du står i dvs samma sak som cd etc.

cd /etc
Byter katalog till /etc

Dessa två kommandon ger samma resultat om du står i root katalogen och skriver dem.
KDE 4.5 SC är ute i det fria!!! Tjoho

Stagnation is good for nobody - after all if you don't progress you end up with gnome
Användarvisningsbild
per9000
Inlägg: 931
Blev medlem: 07 maj 2007, 11:06
OS: Ubuntu
Utgåva: 23.04 Lunar Lobster
Ort: Västerås
Kontakt:

SV: att använda "cd" i terminalen

Inlägg av per9000 »

WTF !?!

Kod: Markera allt

>man cd
No manual entry for cd

>cd --help
bash: cd: --: invalid option
cd: usage: cd [-L|-P] [dir]
Klart IG.

Här finns lite dokumentation (men det står inget av intresse egentligen): http://www.opengroup.org/onlinepubs/009 ... es/cd.html
mcNisse skrev: . betyder den katalogen som du står i.

cd ./etc
Byter katalog till etc som finns i den katalogen som du står i dvs samma sak som cd etc.

cd /etc
Byter katalog till /etc

Dessa två kommandon ger samma resultat om du står i root katalogen och skriver dem.

Dessutom betyder två punkter efter varandra att man hänvisar till mamma-mapp.

Antag att dessa mappar finns:
  /tmp/baz/
  /tmp/fubar/
och att du står i /tmp

>cd fubar
# du står nu i /tmp/fubar/
# cd ./fubar hade gjort samma sak
# cd /tmp/fubar också

>cd ../baz
# du står nu i /tmp/baz/

> cd .
# du är kvar i /tmp/bax/

> cd ..
# du står nu i /tmp/

Är du osäker på vilken mapp du är i spottar "pwd" ur sig namnet på mappen du är i.

"cd" bara utan någonting tar dig till din home-katalog.

"cd -" tar dig till mappen du nyss var i

"chdir" är en synonym till cd (tror jag)

Kolla även in pushd och popd som kan vara bra ibland (man sida verkar saknas)
http://www.ss64.com/bash/pushd.html
http://www.ss64.com/bash/popd.html


/Per
--
Per Erik Strandberg
Yet Another IT Consultant
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

SV: att använda "cd" i terminalen

Inlägg av mcNisse »

WTF !?!
Hehe, det där är lite (o)lustigt. cd är ett inbyggt kommando i skalet så det finns ingen mansida för det. Inte helt inuitivt så behöver man skriva man <det skal du kör> för att få reda på extra information.
KDE 4.5 SC är ute i det fria!!! Tjoho

Stagnation is good for nobody - after all if you don't progress you end up with gnome
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: att använda "cd" i terminalen

Inlägg av Konservburk »

per9000 skrev: WTF !?!

Kod: Markera allt

>man cd
No manual entry for cd

>cd --help
bash: cd: --: invalid option
cd: usage: cd [-L|-P] [dir]
Klart IG.
mcNisse skrev: Hehe, det där är lite (o)lustigt. cd är ett inbyggt kommando i skalet så det finns ingen mansida för det. Inte helt inuitivt så behöver man skriva man <det skal du kör> för att få reda på extra information.
Med bash som skal så kan du skriva help cd om du inte orkar
rota igenom hela man bash.
mannealm
Inlägg: 802
Blev medlem: 17 jun 2007, 21:49
Ort: Halmstad

SV: att använda "cd" i terminalen

Inlägg av mannealm »

mcNisse skrev: . betyder den katalogen som du står i.

cd ./etc
Byter katalog till etc som finns i den katalogen som du står i dvs samma sak som cd etc.

Så den där punkten är helt meningslös?

cd /etc
Byter katalog till /etc

Oavsett vilken katalog man står i? Eller funkar de bara om man redan befinner sig i rootkatalogen?


Dessa två kommandon ger samma resultat om du står i root katalogen och skriver dem.

Fast hur blir det om man står i en helt annan katalog?

Nybliven nörd!
Användarvisningsbild
mcNisse
Inlägg: 5211
Blev medlem: 06 feb 2007, 20:51
OS: Debian
Utgåva: Vet inte/ingen utgåva passar

SV: att använda "cd" i terminalen

Inlägg av mcNisse »

Dessa två kommandon ger samma resultat om du står i root katalogen och skriver dem.
Fast hur blir det om man står i en helt annan katalog?
Då blir resultatet inte det samma. Skillnaden ligger i att använda relativa och absoluta sökvägar.

När man använder sig av absoluta sökvägar kommer du alltid till katalogen du har skrivit in, tex /etc.
Använder du relativa sökvägar beror det på var du stär, tex ./etc eller etc.
KDE 4.5 SC är ute i det fria!!! Tjoho

Stagnation is good for nobody - after all if you don't progress you end up with gnome
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: att använda "cd" i terminalen

Inlägg av Konservburk »

mannealm skrev:
mcNisse skrev: cd ./etc
Byter katalog till etc som finns i den katalogen som du står i dvs samma sak som cd etc.
Så den där punkten är helt meningslös?
Nej, punkten är inte meningslös.  Den ser till att du helt säkert får en relativ
sökväg, dvs relativt den nuvarande katalogen.

Om du t.ex. har en katalog som heter "-":

Kod: Markera allt

mkdir ./-
cd -        # här hamnar du i den föregånde katalogen och inte i ./-
cd -        # gå tillbaka
cd ./-      # och gör rätt
Om du har en variabel som heter CDPATH så kommer cd i första hand vara
relativt den om du inte anger "./":

Kod: Markera allt

CDPATH=/
mkdir ./etc
cd etc        # här hamnar du i /etc och inte i ./etc
cd -          # gå tillbaka
cd ./etc      # och gör rätt
Skriv svar

Återgå till "Terminalforum"