• Domingo 22 de Diciembre de 2024, 08:01

Autor Tema:  Cd $var - No Sirve  (Leído 1993 veces)

x.cyclop

  • Miembro de PLATA
  • *****
  • Mensajes: 1039
  • Nacionalidad: mx
    • Ver Perfil
Cd $var - No Sirve
« en: Lunes 25 de Septiembre de 2006, 14:35 »
0
¿Porqué esto no sirve? :blink:

Código: Text
  1. LEOD=/home/leo/Desktop
  2.  
  3. cd $LEOD
  4.  

Puse export, el path entre comillas dobles y está igual.

Uso Bash.:think:

- Great works aren't produced on the first try. [Ernest Hemingway]
- Be ambitious, yet realistic in your dreams. Do something that makes a positive impact. Don’t let the nay-sayers get you down. [Bjarne Stroustrup]

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Cd $var - No Sirve
« Respuesta #1 en: Lunes 25 de Septiembre de 2006, 21:28 »
0
Código: Text
  1. LEO="/home/leo/desktop"
  2. cd $LEO
  3.  
:whistling:
Código: Text
  1. #/usr/bin/env perl
  2. my $leo = "$ENV{HOME}/desktop"; #O se puede usar sin "my"
  3. chdir $leo or die "No se puede ir a $leo: $!\n";
  4.  
  5.  
:P
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

x.cyclop

  • Miembro de PLATA
  • *****
  • Mensajes: 1039
  • Nacionalidad: mx
    • Ver Perfil
Re: Cd $var - No Sirve
« Respuesta #2 en: Lunes 25 de Septiembre de 2006, 22:19 »
0
Con comillas está igual. :D

Con chdir me pone:

Código: Text
  1. ./ho: line 5: chdir: command not found
  2.  

 :ph34r:

- Great works aren't produced on the first try. [Ernest Hemingway]
- Be ambitious, yet realistic in your dreams. Do something that makes a positive impact. Don’t let the nay-sayers get you down. [Bjarne Stroustrup]

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Cd $var - No Sirve
« Respuesta #3 en: Lunes 25 de Septiembre de 2006, 23:17 »
0
chrdir es para Perl  :P no para Bash, mira el codigo
Lo que pasa es que cambia en el script, pero no en la consola, mira:
Código: Text
  1. #!/usr/bin/env bash
  2. LEO='/usr'
  3. cd "$LEO"
  4. if [ `pwd` = '/usr' ]; then
  5.   echo "Ok, esta bien";
  6. else
  7.   printf "\e[1mPues no, no es asi\e[0m\n"
  8. fi
  9.  
  10.  
Busca algo como PATH o HOME no me acuerdo como era, pero es una variable en especial
[EDIT]
Ahhh, si mira esto:
http://www.tldp.org/LDP/abs/html/abs-guide.html
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.

x.cyclop

  • Miembro de PLATA
  • *****
  • Mensajes: 1039
  • Nacionalidad: mx
    • Ver Perfil
Re: Cd $var - No Sirve
« Respuesta #4 en: Martes 26 de Septiembre de 2006, 00:29 »
0
Ahora sí.

Citar
[EDIT]
Ahhh, si mira esto:
http://www.tldp.org/LDP/abs/html/abs-guide.html
Lo había visto pero no explica bien. Estoy leyendo Unix Shell Programming, 3rd edition (SAMS). :D

Gracias. :P

- Great works aren't produced on the first try. [Ernest Hemingway]
- Be ambitious, yet realistic in your dreams. Do something that makes a positive impact. Don’t let the nay-sayers get you down. [Bjarne Stroustrup]

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Cd $var - No Sirve
« Respuesta #5 en: Martes 26 de Septiembre de 2006, 00:41 »
0
Algo mas, cd es propio de Bash, no es un comando.
En la consola se puede exportar elementos siendo la consola un "cliente en linea" de SH, es decir cuando ejecutas un programa, como echo o ls estas "haciendo un programa", a diferecia de el DOS (Si no es asi... pues ya saben digan) Bash es mas que un modo de comando, es un lenguaje usado como modo de comandos, pro eso el path no se exporta y por eso se puede filtrar la salida de un comando en una misma linea.
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.