Мне нужно запустить awk
изнутри R до добавить пробелы в конце каждой строки файла , чтобы обеспечить его постоянную фиксированную ширину. Как это:
$ cat -e file
1$
12$
123$
1234$
$ awk '{printf "%-10s\n", $0}' file | cat -e
1 $
12 $
123 $
1234 $
12345 $
Однако у меня возникают проблемы с выполнением этого изнутри R. Как правильно экранировать системные вызовы изнутри R имеет дело с чем-то похожим, но, похоже, для меня это не работает.
> ' awk \'{printf "%-180s\n", $0}\' file '
[1] " awk '{printf \"%-180s\n\", $0}' file "
> system(' awk \'{printf "%-180s\n", $0}\' file ')
awk: cmd. line:1: {printf "%-180s
awk: cmd. line:1: ^ unterminated string
awk: cmd. line:1: {printf "%-180s
awk: cmd. line:1: ^ syntax error
Я тоже попробовал system(" awk '{printf \"%-180s\n\", $0}' file ")
, с точно такой же ошибкой. Я не уверен, почему это не удается, но, похоже, это связано со смешанными цитатами. Есть идеи, как сделать эту работу?