tengo que dividir una cadena en una escritura del golpe por "/" pero he intentado:¿Cómo dividir una cadena en bash delimitado por/
for i in $(echo $www | tr "/")
Pero no funcionó, alguna sugerencia?
Muchas gracias.
tengo que dividir una cadena en una escritura del golpe por "/" pero he intentado:¿Cómo dividir una cadena en bash delimitado por/
for i in $(echo $www | tr "/")
Pero no funcionó, alguna sugerencia?
Muchas gracias.
$ IFS=/ read -a foo <<< 'abc def/ghi/jkl'
$ echo "${foo[0]}*${foo[1]}*${foo[2]}"
abc def*ghi*jkl
Su truco funcionaría, si quiere decir tr
, lo barra debe ser traducido en:
for w in $(echo "what/the/heck" | tr "/" " ") ; do echo $w; done
what
the
heck
Configuración IFS es el mejor camino a seguir. Por supuesto, sospecho que '$ www' no tendrá espacios, sino'% 20's. ¡No olvides 'desarmar IFS' al final! También funcionará con 'IFS =/for i en $ www; hacer ... hecho ; unset IFS' – Benoit
No necesita desconectar '$ IFS' al final ya que esta notación solo lo configurará durante la duración del comando. –
['IFS =/foo = ($ www)'] (http://ideone.com/MWWTMi) funciona también – jfs