[英]How do I pipe output into Visual Studio Code?
我想将 pipe 的 output 的命令转换成 Visual Studio Code 中的新文本 window。
通常,我会做这样的事情:
echo foo | code
...但这似乎行不通; Visual Studio Code 启动,但不显示输入。 有没有办法在命令行上做管道?
从 1.19.1 版开始,您可以通过调用将输出通过管道传输到当前窗口:
<command> | code -
如果您使用的是 1.19 或更早版本,则不需要 arg:
<command> | code
截至 2016 年 9 月,它似乎不受支持,但有一个未解决的问题来实施它:
我在 Ubuntu Gnome 17.10 (Artful Aardvark) 上运行 Visual Studio Code v1.19.3。 仅管道到code
不足以bin 到stdin。
$ ps aux | code
Run with 'code -' to read from stdin (e.g. 'ps aux | grep code | code -').
您必须添加-
运算符:
$ ps aux | code -
这正在工作并打开一个由命令输出填充的新文本选项卡。
当我使用接受的答案时,控制台会被阻止,直到我关闭 VS Code 中的相应选项卡。 由于我经常希望在 VS Code 中保持选项卡在我继续使用控制台时保持打开状态,因此我想出了这个愚蠢的解决方法:
ls > t; code t; rm t
它重定向到当前目录中的文件t
,告诉 VS Code 打开该文件,然后将其删除。 您将在 VS Code 中一个标签为t (deleted)
的选项卡中看到该文件的内容。
如果 VS Code 尚未打开,则需要稍微延迟(1 秒对我有用):
ls > t; code t; sleep 1; rm t
笔记
您还可以使用终端扩展中的复制/管道,并在终端中使用cp2code
或tee2code
( tee2code
不会终止管道链),如下所示:
ls ~ | cp2code
ls ~ | tee2code | sort
它会打开一个新文档,其中包含输入的数据。 如果您有多个 VS 代码 windows,它会显示您运行命令的 window 上的复制数据。
我为 VSCode 做了一个扩展,解决了这个问题,同时 VSCode 仍然打开
https://marketplace.visualstudio.com/items?itemName=YuvrajMishra.vscode-pipe
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.