2012-02-28 16 views

Respuesta

10
$ IFS=/ read -a foo <<< 'abc def/ghi/jkl' 
$ echo "${foo[0]}*${foo[1]}*${foo[2]}" 
abc def*ghi*jkl 
+0

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

+1

No necesita desconectar '$ IFS' al final ya que esta notación solo lo configurará durante la duración del comando. –

+1

['IFS =/foo = ($ www)'] (http://ideone.com/MWWTMi) funciona también – jfs

3

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 
Cuestiones relacionadas