Выход из внешних одинарных кавычек определенно был бы неправильным (как в \'N{pos=\"\"}\'
).Одинарные кавычки не оценивают переменные (с $
) внутри них.Таким образом, необходимо избегать только одинарных кавычек внутри одинарных кавычек.
gvpr -c 'N{pos=""}' "$FILE" | fdp -o "data/${PAD}.${FILE}" -Tdot -Nlabel="" -Nshape=point -Gstart="$RANDOM"
... должно работать с синтаксической точки зрения.Конечно, я не знаю команд gvpr
и fdp
, чтобы судить, что они ожидают.
В любом случае, 'data/${PAD}.${FILE}'
не даст того, что вы хотите, потому что вы хотите, чтобы переменные внутри расширялись.Таким образом, использование "data/${PAD}.${FILE}"
в моем примере.
О, и ваш расширенный пример противоречит тому, что вы дали выше "$FILE"
и "data/${PAD}.${FILE}"
не совсем совпадают в расширенной форме;)
И, предполагая, что вашей команде gvpr
требуется строка, заключенная в кавычки снова , вам придется перейти на:
gvpr -c '\'N{pos=""}\'' "$FILE" | fdp -o "data/${PAD}.${FILE}" -Tdot -Nlabel="" -Nshape=point -Gstart="$RANDOM"