当我尝试如下 pastebin 2 命令时:
echo Merry && echo Christmas | pastebinit
它仅粘贴第二个命令,并将第一个命令作为输出:
Merry
http://paste.ubuntu.com/9605648/
现在我可以这样做:
echo Merry Christmas | pastebinit
这样可以工作,但是我想运行 2 个单独的命令,并将输出传输到pastebinit
,但我不能:
sudo apt-get install christmas && sudo apt-get update | pastebinit
似乎不起作用。
答案1
将其包装起来以形成复合命令:
{ echo Merry && echo Christmas;} | pastebinit
一般来说,要按顺序将多个命令的输出传送到另一个命令,请执行以下操作:
{ cmd1; cmd2; ...;} | cmd
或者
(cmd1; ... ) | cmd
答案2
您是否不能先将两个命令的输出重定向到一个文件中(使用 append 来附加第二个命令的输出),然后将其通过管道传输到 pastebinit?
echo Merry > out.txt && echo Christmas >> out.txt && cat out.txt | pastebinit
也许还将 stderr 重定向到输出文件。
答案3
以下是解决方法回答“如何在 CLI 上获取复杂输出?”的问题
应该有用:
thufir@dur:~$
thufir@dur:~$ script xmas
Script started, file is xmas
thufir@dur:~$
thufir@dur:~$ echo Merry && echo Christmas
Merry
Christmas
thufir@dur:~$
thufir@dur:~$ exit
exit
Script done, file is xmas
thufir@dur:~$
thufir@dur:~$ cat xmas
Script started on 2017-10-27 06:37:59-0700
thufir@dur:~$
thufir@dur:~$ echo Merry && echo Christmas
Merry
Christmas
thufir@dur:~$
thufir@dur:~$ exit
exit
Script done on 2017-10-27 06:38:23-0700
thufir@dur:~$
thufir@dur:~$ pastebinit xmas
http://paste.ubuntu.com/25830406/
thufir@dur:~$
这是 pastebin文件在 ubuntu 上,如上所述。man script
有关如何使用的参考typescript
。
请注意,您可以执行脚本、交互等。该script
命令只是将所有内容记录到文件中。不太确定如何使其更可读无需摆弄控制台/shell 配置...
基本上,如果你关闭所有颜色等,它会看起来更好。