Перенаправление вывода средствами командной строки lua:
Перенаправление вывода средствами командной строки lua:
Возможно ли в строке с префиксом lua: написать что-то типа "> имя_файла" чтобы текст, появляющийся на экране записывался бы в файл? Я понимаю, что можно поменять сам макрос, который вызывается, но его не хочется трогать.
Last edited by HaRT on Thu 16 Feb, 2017 21:10, edited 1 time in total.
Reason: Улучшен Заголовок Темы
Reason: Улучшен Заголовок Темы
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
переадресация вывода средствами командной строки lua:
Вот так вот просто > конечно нельзя. Этот символ в Lua означает "больше", а вовсе не переадресацию вывода в файл.
Лучше бы привели конкретный пример.
Лучше бы привели конкретный пример.
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
переадресация вывода средствами командной строки lua:
Я так понял: есть скрипт (скажем,
[i]my.lua[/i]
), который использует FAR API и читает/пишет что-то из/в консоль (стандартным образом), а хочется запустить его так: lua:@my.lua <in >out
.Фар есть инструмент, а не нянька. © 2009 DrKnS
переадресация вывода средствами командной строки lua:
Да, примерно так, но чуть иначе. Есть у меня макрос, который повешен на клавишу (CtrlBackSlash). Он выполняет некоторые довольно громоздкие действия, а в консоль пишет сообщения. Мне нужно было эти сообщения записать в файл. Для этого я хотел вызвать макрос из командной строки lua: eval("CtrlBackSlash",2) и надеялся, что можно будет переадресовать вывод.
Может можно что-то написать на lua перед eval, чтобы вывод перенаправился?
Может можно что-то написать на lua перед eval, чтобы вывод перенаправился?
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
переадресация вывода средствами командной строки lua:
Можно, но очень громоздко получается:
При этом, если не указать полный путь для файла, он попадёт в "текущую папку", которая чаще всего не совпадает с активной панелью.
lua:io.output("myfile.txt") eval("CtrlBackSlash",2) io.close() io.output(io.stdout)
При этом, если не указать полный путь для файла, он попадёт в "текущую папку", которая чаще всего не совпадает с активной панелью.
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
переадресация вывода средствами командной строки lua:
А перенаправление сложно реализовать?
Фар есть инструмент, а не нянька. © 2009 DrKnS
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
переадресация вывода средствами командной строки lua:
Сложность может и не велика (может быть час-два работы), но вот потребности у меня в этом до сих пор никогда не возникало. То есть мотивации заниматься этим у меня нет (что, впрочем, не должно препятствовать другим, кому это действительно нужно).
Перенаправление вывода средствами командной строки lua:
Shmuel, спасибо!
Что громоздко - не страшно. Хуже то, что переадресуется не всё. У меня в макросе оказался os.execute() и её вывод остается на экран. Так что пришлось макрос временно изменить, дописав переадресацию в командe в os.execute.
Что громоздко - не страшно. Хуже то, что переадресуется не всё. У меня в макросе оказался os.execute() и её вывод остается на экран. Так что пришлось макрос временно изменить, дописав переадресацию в командe в os.execute.