首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
V2EX  ›  分享创造

Knao - 将上一个终端命令输出粘入剪切板

  •  
  •   chunqiuyiyu · 161 天前 · 1575 次点击
    这是一个创建于 161 天前的主题,其中的信息可能已经有所发展或是发生改变。

    说明

    最初的想法是将终端中出错的的命令输出记录下来,后来就想到可以一步到位放入剪切板中,便于分享给他人或者在网上搜索。也许没什么用处,但是让我熟悉了 TypeScript 与 Node.js 中子进程相关的 API。原理简单到发指:读取终端命令历史文件,找到上次运行的命令,重新运行命令,将输出通过管道操作符(|)输出到剪切板,只支持一些简单的同步命令。

    预览

    preview.gif

    链接

    Knao

    欢迎使用并提出意见建议。

    21 回复  |  直到 2019-05-20 14:02:00 +08:00
        1
    henryhu   161 天前   ♥ 2
    多数命令重复执行,结果不一样了,咋整?
        2
    jamesxu   161 天前 via iPhone   ♥ 1
    没啥意义,直接 > 输出到文件
        3
    Imr   161 天前 via iPhone   ♥ 1
    v 友的创意总能让人“大开眼界”
        4
    InternetExplorer   161 天前 via Android   ♥ 2
    重新运行命令………你可真是个小机灵鬼.jpg
        5
    InternetExplorer   161 天前 via Android   ♥ 1
    建议弄个命令白名单,不是什么命令都适合重新运行的
        6
    henryhu   161 天前   ♥ 1
    楼主,tee 命令了解一下,命令结果终端输出,同时输出到文件,例如:ifconfig | tee ifconfig.log
        7
    JackieMe   161 天前 via Android   ♥ 1
    xclip 好像就是干这个的?
        8
    Sainnhepark   161 天前 via Android   ♥ 1
    看到这个贴突然想问个问题,zsh 有没有什么办法在不重新运行上一个命令的情况下,打印上一个命令的输出?
        9
    dongin   160 天前   ♥ 2
    mac 下不是有 pbcopy/pbpaste 么?
        10
    omph   160 天前   ♥ 1
    直接用 shell 做不更方便吗?
    history -n -1 | xargs sh -c | xclip
        11
    chunqiuyiyu   160 天前
    @henryhu
    @jamesxu
    @Imr
    @InternetExplorer
    @henryhu 简单的练习项目,只是为了熟悉 TypeScript 与 Node.js 中 child_process 的使用,没想那么多。
        12
    chunqiuyiyu   160 天前
    @JackieMe
    @dongin
    @omph 内部就是调用了这些 Shell 命令。
        13
    chunqiuyiyu   160 天前
    @Sainnhepark 没有方法。
        14
    omph   160 天前   ♥ 1
    @Sainnhepark [Save all the terminal output to a file - Unix & Linux Stack Exchange]( https://unix.stackexchange.com/questions/200637/save-all-the-terminal-output-to-a-file)
        15
    lululau   160 天前
    command | tee >(pbcopy or xclip)
        16
    lululau   160 天前
    如果只是偶尔想拷贝一下先前执行过的命令的输出的话,如果用 tmux 就不用说了,如果用 iTerm2 则可以使用 AppleScript 拿到 iTerm2 pane 的文本内容,3.3.0 好像开始支持 Python 了,但是不知道有没有这个 API
        17
    Cabana   160 天前
    瞬间先到了 rm -rf ./
        18
    Cabana   160 天前
    @Cabana #17 先->想
        19
    mooncakejs   160 天前
    『重新运行命令』好可怕。
    cd logs
    rm -rf *
    ----
    cd /
    Knao
        20
    fuzhuo233   154 天前
    macOS 上 cat package.json | pbcopy; 粘贴回来 pbpaste > out
    cygwin 上 cat package.json > /dev/clipboard
    Linux 上我没用过貌似用 xclip 可以 cat package.json | xclip;

    macOS 一般在 vim 上按"+用加号寄存器来复制粘贴就行了…
        21
    Kobayashi   150 天前   ♥ 1
    @lululau iTerm2 根本不用你说的这么麻烦,直接 Cmd + Shift + a 拿到上一次输出。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4161 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 01:33 · PVG 09:33 · LAX 18:33 · JFK 21:33
    ♥ Do have faith in what you're doing.