2016-03-20 2 views
-2

Я объявила переменную (строку), содержащую k имен очередей, я хочу удалить.Как использовать awk для печати каждого слова из цельной строки?

Как я могу «прокрутить» строку и удалить каждую очередь?

У меня возникли проблемы с командой awk.

спасибо большое!

+0

Предполагая, что вы уже поняли команду для работы по крайней мере для вас - вы пытались AWK -F «» «{печати $ 0}» – Learner

+0

я знаю эту команду. он печатает всю строку. Я хочу, чтобы каждое слово в строке печаталось отдельно. какую команду я могу использовать для этой цели? –

ответ

0

Вы можете попробовать следующую команду?

awk '{for(i=1;i<=NF;i++) {printf "%s ", $i}; printf "\n"}' | xargs rm 
+0

Как я могу изменить вышеприведенную команду, чтобы получить каждое слово из строки, чтобы поместить в новую переменную и удалить нужную мне очередь? –

0

Есть много способов, я думаю, что самое простое будет

$ vars="name1 name2 name3" 
$ for v in $vars; do echo $v; done 
name1 
name2 
name3 

изменения эхо на ваш сценарий.

0

Вы можете использовать xargs:

queues="q1 q2 q3 q4" 
echo ${queues} | xargs -n1 echo "Remove" 
Смежные вопросы