помогите с bash[решено]
A='{ print $1-0}'
echo "$A"
echo 1 | awk "$A"
если хочешь именно так то нужен eval
#!/bin/bash
A="'{ print \$1-0}'"
echo $A
echo 1 | eval awk $A
1) я поправил код, ибо забыл экранировать $ пере 1
2) все решилось вот так: echo 1 | eval awk $A
спс =)
Но лучше не игратся с этим экранированием.
У "echo" есть башизмы в работе с скейп последовательностями лучше использовать printf
Оставить комментарий
QXDM
не понимаю как записать ' в "".Есть некоторая строка, в которой записаны параметры для некоторой тулзы, возникают проблемы с одинарной кавычкой. Накидал пример:
вывод:
ЗЫ. возможно проблема в следующем, нашел что можно добавить set -x для вывода команд:
объясните, ткните или подскажите как это исправить?