no encuentro el error en un Script bash (cut)
Publicado por Alberto (1 intervención) el 19/07/2010 05:08:57
Buenas tengo una consulta que tal vez sea una tonteria (soy nuevo en linux) pero que me gustaria resolver ya que no he encontrado en internet nigun lugar que hablen de esto, el problema es el siguiente tengo un script que recibe por parámetro un string:
quiero sacar los campos de dicho string del tipo : dir=x&largo=y
pero si lo hago como me parece no me anda
ladir=`echo $1 | cut -d& -f1 | cut -d= -f2`
largo=`echo $1 | cut -d& -f2 | cut -d= -f2`
si lo corro me tira el siguiente error:
cut: la opción requiere un argumento -- 'd'
Pruebe `cut --help' para más información.
./prueba3: línea 5: -f1: no se encontró la orden
cut: la opción requiere un argumento -- 'd'
Pruebe `cut --help' para más información.
./prueba3: línea 7: -f2: no se encontró la orden
No command 'def' found, did you mean:
Command 'df' from package 'coreutils' (main)
Command 'ref' from package 'elvis-tools' (universe)
Command 'gdef' from package 'firebird2.1-classic' (universe)
Command 'gdef' from package 'firebird2.0-super' (universe)
Command 'gdef' from package 'firebird2.1-super' (universe)
Command 'gdef' from package 'firebird2.0-classic' (universe)
def: command not found
[1]+ Hecho ./prueba3 abc
pero lo raro es que con otros caracteres si anda, por ej:
ladir=`echo $1 | cut -d: -f1 | cut -d{ -f2`
largo=`echo $1 | cut -d: -f2 | cut -d{ -f2`
igual probe poner el "&" y el "=" entre "" , ' ', ` ` pero tampoco anduvo probé dejando un espacio entre la "d" y el "&" y tampoco
bueno si alguien ve esto y tiene alguna idea y me avisa le agradezco, porque no se donde esta el problema
quiero sacar los campos de dicho string del tipo : dir=x&largo=y
pero si lo hago como me parece no me anda
ladir=`echo $1 | cut -d& -f1 | cut -d= -f2`
largo=`echo $1 | cut -d& -f2 | cut -d= -f2`
si lo corro me tira el siguiente error:
cut: la opción requiere un argumento -- 'd'
Pruebe `cut --help' para más información.
./prueba3: línea 5: -f1: no se encontró la orden
cut: la opción requiere un argumento -- 'd'
Pruebe `cut --help' para más información.
./prueba3: línea 7: -f2: no se encontró la orden
No command 'def' found, did you mean:
Command 'df' from package 'coreutils' (main)
Command 'ref' from package 'elvis-tools' (universe)
Command 'gdef' from package 'firebird2.1-classic' (universe)
Command 'gdef' from package 'firebird2.0-super' (universe)
Command 'gdef' from package 'firebird2.1-super' (universe)
Command 'gdef' from package 'firebird2.0-classic' (universe)
def: command not found
[1]+ Hecho ./prueba3 abc
pero lo raro es que con otros caracteres si anda, por ej:
ladir=`echo $1 | cut -d: -f1 | cut -d{ -f2`
largo=`echo $1 | cut -d: -f2 | cut -d{ -f2`
igual probe poner el "&" y el "=" entre "" , ' ', ` ` pero tampoco anduvo probé dejando un espacio entre la "d" y el "&" y tampoco
bueno si alguien ve esto y tiene alguna idea y me avisa le agradezco, porque no se donde esta el problema
Valora esta pregunta


0