У меня есть небольшой фрагмент кода на c, который должен запускать команду awk на моей машине с Linux. Однако для меня жизни это не будет exec. Awk работает, если я запускаю его непосредственно в терминале.
Моя текущая неудачная команда
system("awk '{ printf \"%d \n\", $12 }' results.dat | sort -n");
Не удается с
awk: { printf "%d
awk: ^ unterminated string
Как еще вы можете избежать двойных кавычек, чтобы команда выполнялась? Кроме того, почему это не удается, но когда я заменяю системный вызов на printf, он будет печататься?