Linux/Unix Shell Scripting - al ejecurar un script en csh no muestra nada.

 
Vista:

al ejecurar un script en csh no muestra nada.

Publicado por Elías (6 intervenciones) el 07/11/2007 01:04:24
Hola, buenas a todos,

Voy a plantear un problema que no se muy bien porque me ocurre:

cuando ejecuto un script que comienza con las 2 primeras líneas:
#!/bin/csh
set echo

No hace nada de nada; es decir no imprime nada.

Sin embargo si cambio las lineas a
#!/bin/bash
set echo

si que es capaz de ejecutarse aunque con errores ya que la sintaxis no es la misma en bash que en csh.

Me gustaría saber porque ocurre esto , pero antes os voy a mencionar una cosa importante:

Antes de instalar cualquier programa, cambié en /etc/passwd para usar csh en vez de lo que venía por defecto (bash)

root:x:0:0:root:/root:/bin/csh
bin:x:1:1:bin:/bin:/bin/sh
daemon:x:2:2:daemon:/sbin:/bin/sh
adm:x:3:4:adm:/var/adm:/bin/sh
lp:x:4:7:lp:/var/spool/lpd:/bin/sh
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/bin/sh
news:x:9:13:news:/var/spool/news:/bin/sh
uucp:x:10:14:uucp:/var/spool/uucp:/bin/sh
operator:x:11:0:operator:/var:/bin/sh
games:x:12:100:games:/usr/games:/bin/sh
nobody:x:65534:65534:Nobody:/:/bin/sh
rpm:x:13:101:system user for rpm:/var/lib/rpm:/bin/false
messagebus:x:14:105:system user for dbus:/:/sbin/nologin
avahi:x:15:106:system user for avahi:/var/avahi:/bin/false
haldaemon:x:16:16:system user for hal:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
xfs:x:70:70:system user for xfs:/etc/X11/fs:/bin/false
apache:x:71:71:system user for php-session:/var/www:/bin/sh
postfix:x:72:72:system user for postfix:/var/spool/postfix:/bin/false
ftp:x:73:73:system user for proftpd:/var/ftp:/bin/false
rpc:x:74:74:system user for portmap:/:/bin/false
gdm:x:75:75:system user for gdm:/var/lib/gdm:/bin/false
rpcuser:x:76:76:system user for nfs-utils:/var/lib/nfs:/bin/false
elias:x:500:500:Elias Criado Pinto:/home/elias:/bin/csh


No se si esto puede afectar a lo os dije o si el problema puede ser de otra cosa.
Tampoco se me ocurre como buscar el origen del mismo.

Hay alguna forma de verlo?

Muchas gracias anticipadas

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:al ejecurar un script en csh no muestra nada.

Publicado por Tom (361 intervenciones) el 13/11/2007 13:01:20
¿ Qué es eso de set echo ?

Si te digo la verdad, no me suena de nada.

Como no pongas el script, es difícil ver por qué "no imprime nada".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:al ejecurar un script en csh no muestra nada.

Publicado por Elías (6 intervenciones) el 14/11/2007 00:17:16
La linea set echo me recomendaron que la pusiera en otro foro de mandriva linux, su utilidad parece radicar en (traducido del inglés "display each line after the variables and meta-characters have been substituted") mostrar cada linea despues de que las variables y meta caracteres han sido substituidos.

De todas maneras el problema es el mismo tanto con esa línea como sin ella.

Comprobé que no depende del contenido del script; si no de la primera línea. Es decir simplemente un script tan simple como el siguiente:

!/bin/sh
echo ....Program finished....

Sí se ejecuta bien (está en sh)

Veamos:

[elias@localhost MM5toGrADS]$ ./kk.sh
....Program finished....

Sin embargo si cambio sh por csh me queda

#!/bin/csh
echo ....Program finished....

Al ejecutarlo me obtengo:

[elias@localhost MM5toGrADS]$ ./kk.csh
[elias@localhost MM5toGrADS]$

De lo que deduzco que algún problema hay ya que no imprime la linea ....Program finished....

?¿?¿?¿??¿

Donde puede estar el error??. Porqué no puedeo ejecutar scripts en csh?

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:al ejecurar un script en csh no muestra nada.

Publicado por n0str0m0 (180 intervenciones) el 14/11/2007 13:51:07
Mi impresión es que es un problema con la salida estándar. Si hubiera algún tipo de error en el comando (prueba poniendo algo como ehco en lugar de echo...) Te arrojaría error.

Por eso creo que lo ejecuta, pero la salida no la muestra.

Prueba también a ejecutar algo como:

#!/bin/chs

echo prueba > fichero.txt


Y comprueba si se crea el fichero.

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:al ejecurar un script en csh no muestra nada.

Publicado por Elías (6 intervenciones) el 14/11/2007 16:28:20
Lo he probado pero sigue sin mostrar:

mensaje de error al poner ehco en vez de echo

y sin crear el fichero al poner poner echo prueba > fichero.txt

No entiendo que puede pasar???

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:al ejecurar un script en csh no muestra nada.

Publicado por n0str0m0 (180 intervenciones) el 26/11/2007 14:10:17
Pues la verdad es que no lo tengo muy claro...

Intentaré averiguar algo más, pero la verdad es que ando un poco perdido.

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:al ejecurar un script en csh no muestra nada.

Publicado por xacks (1 intervención) el 22/06/2011 15:36:25
http://es.wikipedia.org/wiki/C_Shell , informate un poco antes de postear cualquier cosa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar