在 macOS 上从可执行文件向标准输出打印内容我想知道在 macOS 上运行 JSL 可执行文件时,是否有办法将输出打印到标准输出(stdout)。目前的 print 命令会将输出打印到日志中,而可执行文件运行结束后,日志就会丢失。
自动化和脚本编写回复:从可执行文件向标准输出打印JSL 会将数据写入标准输出,Craige 也发表过一些与此相关的帖子。
回复:从可执行文件向标准输出打印我认为我找到了一个解决方案,如下所示。不过,我想知道这个方法是否最简单。
stdout_print = Function({msg},
{_tty},
Run Program(
Executable("/bin/sh"),
Options({"-c", "ps -o tty= -p $(ps -o ppid= -p $(ps -o ppid= -p $$)) | tr -d ' ' > /tmp/jmp_tty.txt"})
);
Wait(1);
_tty = "/dev/" || Trim(Load Text File("/tmp/jmp_tty.txt"));
Run Program(
Executable("/bin/sh"),
Options({"-c", "echo '" || msg || "' > " || _tty})
);
);
stdout_print("hello");