я должен разделить строку в Баш скрипт на «/», но я пытался:Как разбить строку в Баш, ограниченную/
for i in $(echo $www | tr "/")
Но это не сработало, любое предложение?
Большое спасибо.
я должен разделить строку в Баш скрипт на «/», но я пытался:Как разбить строку в Баш, ограниченную/
for i in $(echo $www | tr "/")
Но это не сработало, любое предложение?
Большое спасибо.
$ IFS=/ read -a foo <<< 'abc def/ghi/jkl'
$ echo "${foo[0]}*${foo[1]}*${foo[2]}"
abc def*ghi*jkl
Ваш трюк будет работать, если бы вы сказали tr
, какая черта должна быть переведена на:
for w in $(echo "what/the/heck" | tr "/" " ") ; do echo $w; done
what
the
heck
Установка IFS является лучшим способом пойти. Конечно, я подозреваю, что '$ www' не будет иметь пробелов, а скорее'% 20'. Не забудьте «отменить IFS» в конце! Будет также работать с 'IFS =/for i в $ www; делать ... ; сделанный ; unset IFS' – Benoit
Вам не нужно отменять '$ IFS' в конце, так как это обозначение будет устанавливать его только на время выполнения команды. –
['IFS =/foo = ($ www)'] (http://ideone.com/MWWTMi) тоже работает – jfs