система (& ldquo; echo * > toto & rdquo;) возвращает ошибку

когда я проверяю эту команду: system ("echo *> toto") (файл toto существует)

Возвращается эта ошибка: bash: syntax error near unexpected token "/ bin / echo x" '`

и я не понимаю почему. Заранее благодарю за советы.

0
задан 30 June 2014 в 19:49

1 ответ

Это могло бы дать понимание, что происходит:

$ echo * | tr ' ' '\n' | sort >toto_a

$ ls -d * | tr ' ' '\n' | sort >toto_b
ls: cannot access VirtualBox: No such file or directory
ls: cannot access VMs: No such file or directory

$ diff -u0 toto_a toto_b
--- toto_a  2014-06-30 18:50:41.939160184 +0200
+++ toto_b   2014-06-30 18:50:45.571160103 +0200
@@ -34,2 +33,0 @@
-VirtualBox
-VMs 

... теперь это предполагает, что "система ()" запускает сессию удара для echo * >toto

Для получения более предсказуемых результатов, которые можно было бы использовать system("bash -c 'echo * > toto') и возможно добавить полный путь к toto.

0
ответ дан 30 June 2014 в 19:49

Другие вопросы по тегам:

Похожие вопросы: