Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Bash cd  (Přečteno 2656 krát)

LorD_OniX

  • Návštěvník
  • Příspěvků: 50
Bash cd
« kdy: 19 Dubna 2009, 15:52:59 »
Ahoj, potreboval bych pomoct s jednim skriptem a nevim nahodou jestli to neni nemozne. Chci si udelat skript v bashi na skakani do adresaru v konzoli, abych nemusel furt vypisovat zname cesty. Jenze Bash z principu nepovoluje ovlivneni rodice ditetem, proto pri zadani cd ve skriptu v bashi se tam skoci, ale po ukonceni skriptu se zustava v akt. adresari. Vite nekdo jak to udelat v tom skriptu, aby se tam skoncilo a zmenilo se to v konzoli ? Diky moc

Yontalcar

  • Stálý člen
  • **
  • Příspěvků: 833
  • Semper fidelis
Re: Bash cd
« Odpověď #1 kdy: 19 Dubna 2009, 18:08:47 »
Nebude jednodušší vytvořit si na ty "známé cesty" symlinky?
NB: ASUS X53U - AMD Brazos E450; Debian GNU/Linux Sid amd64 (KDE 4.14)
Jen dvě věci jsou nekonečné - vesmír a lidská hloupost. Tím prvním si ovšem nejsem tak jist. - Albert Einstein

premet

  • Host
Re: Bash cd
« Odpověď #2 kdy: 19 Dubna 2009, 18:14:28 »
Nebo si vytvořit alias do .bashrc
cesta=/home/uzivatel/bla/foo/bla/foo

Kód: [Vybrat]
cd $cesta
« Poslední změna: 19 Dubna 2009, 18:16:46 od Premet »

Yontalcar

  • Stálý člen
  • **
  • Příspěvků: 833
  • Semper fidelis
Re: Bash cd
« Odpověď #3 kdy: 19 Dubna 2009, 19:39:34 »
Další možností by mohlo být zapsání funkce do ~/.bashrc; funkci se dají dát i parametry
Kód: [Vybrat]
Something() {
cd /usr/src/
echo "$1"
}
Kód: [Vybrat]
test@khazaddum:~$ Something blablabla
blablabla
test@khazaddum:/usr/src$
« Poslední změna: 19 Dubna 2009, 19:52:30 od Yontalcar »
NB: ASUS X53U - AMD Brazos E450; Debian GNU/Linux Sid amd64 (KDE 4.14)
Jen dvě věci jsou nekonečné - vesmír a lidská hloupost. Tím prvním si ovšem nejsem tak jist. - Albert Einstein

LorD_OniX

  • Návštěvník
  • Příspěvků: 50
Re: Bash cd
« Odpověď #4 kdy: 20 Dubna 2009, 11:16:55 »
Diky moc, nejlepsi se me zda ta funkce do bashrc. Jeste jednou diky.

nettezzaumana

  • Host
Re: Bash cd
« Odpověď #5 kdy: 20 Dubna 2009, 13:16:18 »
ja si treba delal (drive) adresar /links, kam jsem symlinkoval co jsem potreboval ..

doted pouzivam stejnej princip i napriklad pro nfs, sambu, ftp aj do adresare srv, pres kterej mam v sambe (smb.conf) pro poradek nastaveny sdileni ..

# ls -lAh /srv/samba/
total 0
lrwxrwxrwx 1 root users 26 2009-02-24 13:40 franta_zaloha -> /mnt/usb_disk/tmp/ACERDATA
lrwxrwxrwx 1 root root  22 2009-03-30 14:41 iso -> /mnt/usb_disk/+IMAGES/
lrwxrwxrwx 1 root root  18 2009-03-30 14:42 PSRL -> /mnt/usb_disk/PSRL
lrwxrwxrwx 1 root root  13 2009-01-06 12:46 Sun -> /mnt/data/Sun
lrwxrwxrwx 1 root root  16 2009-01-06 12:46 tmp -> /home/dpecka/tmp
lrwxrwxrwx 1 root root  18 2009-02-24 20:28 tmp2 -> /mnt/usb_disk/tmp/

kkaarreell

  • Stálý člen
  • **
  • Příspěvků: 1072
Re: Bash cd
« Odpověď #6 kdy: 21 Dubna 2009, 14:27:44 »
jeste prihodim promennou CDPATH, ktera urci, kde se budou hledat adresare, do kterych chcete vlezt (implicitne je prazdna).
pouziti vypada napr. takto:
Kód: [Vybrat]
$ pwd
/home/karel
$ CDPATH=":/:/home"
$ echo $CDPATH
:/:/home
$ cd tmp
/tmp
$ pwd
/tmp
$ cd karel
/home/karel
$ pwd
/home/karel
$
proc mam jako prvni adresar "nic"? a je to tak dobre? ;-)

Yontalcar

  • Stálý člen
  • **
  • Příspěvků: 833
  • Semper fidelis
Re: Bash cd
« Odpověď #7 kdy: 21 Dubna 2009, 16:33:18 »
proc mam jako prvni adresar "nic"? a je to tak dobre? ;-)
'' == '.'  ? :-)

btw. osobně preferuji symlinky bo jsou použitelné i v grafických aplikacích
« Poslední změna: 21 Dubna 2009, 16:36:20 od Yontalcar »
NB: ASUS X53U - AMD Brazos E450; Debian GNU/Linux Sid amd64 (KDE 4.14)
Jen dvě věci jsou nekonečné - vesmír a lidská hloupost. Tím prvním si ovšem nejsem tak jist. - Albert Einstein

nettezzaumana

  • Host
Re: Bash cd
« Odpověď #8 kdy: 21 Dubna 2009, 18:56:57 »
jeste prihodim promennou CDPATH ..

khaaarliik++ ;)

On

  • Stálý člen
  • **
  • Příspěvků: 1136
    • Operační systémy
Re: Bash cd
« Odpověď #9 kdy: 23 Dubna 2009, 06:34:46 »
kkaarreell: No ale tak to je velká paráda :) samozřejmě +
Asus M2A-VM HDMI, Athlon 64 X2 4800+, 4GB DDR2/800Mhz,Powercolor HD 2600 XT, Ubuntu 10.10
Být posledním nevadí, ale nikdy nesmíte být poslední dvakrát po sobě - Iacocca

Yontalcar

  • Stálý člen
  • **
  • Příspěvků: 833
  • Semper fidelis
Re: Bash cd
« Odpověď #10 kdy: 23 Dubna 2009, 07:10:37 »
tak přemýšlím že dát si do CDPATH ten adresář se symlinkama by nemuselo být špatný :-)
NB: ASUS X53U - AMD Brazos E450; Debian GNU/Linux Sid amd64 (KDE 4.14)
Jen dvě věci jsou nekonečné - vesmír a lidská hloupost. Tím prvním si ovšem nejsem tak jist. - Albert Einstein

 

Provoz zaštiťuje spolek OpenAlt.