informatica:linux:expect
Table of Contents
Vectores
bash
No recorre el vector. Falta meter el valor de i dentro de vector[i]
#/bin/bash
vector=( "hola que tal" "adios me voy" )
/usr/bin/expect <<EOF
for {set i 0} { \$i <=1 } {incr i} {
puts \$i
puts "${vector[0]}"
puts "${vector[1]}"
}
EOF
Salida
0 hola que tal adios me voy 1 hola que tal adios me voy
expect
foreach
#/bin/bash
/usr/bin/expect << EOF
set vector {}
lappend vector "hola que tal"
lappend vector "como estamos"
foreach elem \$vector {
puts "\$elem\r"
}
EOF
Salida:
hola que tal como estamos
Con índices
/bin/bash
/usr/bin/expect << EOF
set vector {}
lappend vector "hola que tal"
lappend vector "como estamos"
for {set i 0} {\$i < [llength \$vector]} {incr i} {
puts [lindex \$vector \$i]
}
EOF
Salida
hola que tal como estamos
Recorrer un vector bash en expect
Asigando vector bash a vector expect
#/bin/bash
vector_bash=( \"hola que tal\" \"adios me voy\" )
/usr/bin/expect << EOF
set vector_expect {}
lappend vector_expect ${vector_bash[@]}
foreach elem \$vector_expect {
puts "\$elem\r"
}
EOF
Salida
hola que tal adios me voy
Creando un fichero temporal
#/bin/bash
vector=( "hola que tal" "adios me voy" )
rm jurjur
cat << EOF > jurjur
foreach arg \$argv {
puts "arg : \$arg"
}
EOF
/usr/bin/expect jurjur "${vector[@]}"
Salida
arg : hola que tal arg : adios me voy
informatica/linux/expect.txt · Last modified: by jose
