Проблемы - обзор
Итак, у вас есть две проблемы:
- Вы не говорите
system2()
использовать powershell - Вы не используете правильный синтаксис powershell
Решение
command <- "Get-Content C:/Users/User/Documents/test1.txt | Measure-Object -Word"
system2("powershell", args = command)
, в котором вы заменяете C:/Users/User/Documents/test2.txt
на любой путь к вашему файлу.Я создал два файла .txt, один с текстом «В этом файле семь слов».а другой с текстом «Но в этом файле восемь слов».Затем я запустил в R следующую команду:
command <- "Get-Content C:/Users/User/Documents/test1.txt | Measure-Object -Word"
system2("powershell", args = command)
Lines Words Characters Property
----- ----- ---------- --------
7
command <- "Get-Content C:/Users/User/Documents/test2.txt | Measure-Object -Word"
system2("powershell", args = command)
Lines Words Characters Property
----- ----- ---------- --------
8
Дополнительные пояснения
С help("system2")
:
system2 вызывает команду ОС, указанную командой.
Одна из основных проблем заключается в том, что Measure-Object
- это не системная команда, а команда PowerShell.Системная команда для PowerShell - это powershell
, и это то, что вам нужно для вызова.
Тогда, кроме того, у вас не совсем был правильный синтаксис PowerShell.Если вы посмотрите на документы , вы увидите, что действительно нужна команда PowerShell
Get-Content C:/Users/User/Documents/count_words.txt | Measure-Object -Word
(см. Пример три в связанной документации).