Я знаю, что этот вопрос уже был задан, но ни одно из решений, которое я нашел, не сработало для меня! У меня есть программа, которая имеет такой вывод:
COUNT|293|1|lps
Я заинтересован в том, чтобы было второе поле, однако ни одна из этих попыток не сработала:
./spawn 1 | cut -d '|' -f2
./spawn 1 | cut -d \| -f2
./spawn 1 | awk -F "|" '{print $2}'
./spawn 1 | awk 'BEGIN{FS="|"} {print $2}'
./spawn 1 | sed 's/|/;/g'
./spawn 1 | sed 's/\|/;/g'
Но вывод всегда один и тот же:
COUNT|293|1|lps
Есть ли ошибка где-то в bash? Я был бы удивлен, результаты одинаковы на моем хосте Linux и на моем встроенном устройстве, используюм ash busybox! Любой указатель очень ценится!
РЕДАКТИРОВАТЬ Моя вина, выход был в stderr... . _.
./spawn 1 2>&1 | cut -d '|' -f2
4615
Извините за облагораживание!