【问题标题】:How do I list manually installed packages in Debian over SSH non-interactively? [closed]如何以非交互方式通过 SSH 在 Debian 中列出手动安装的软件包? [关闭]
【发布时间】:2017-09-22 17:22:26
【问题描述】:

直接在我的 Debian 机器上,我可以运行以下命令来显示手动安装的软件包:

aptitude search '!~M ~i'

这很好用。如果我从远程机器上 SSH 并运行命令,我也会得到相同的结果。

但是,当我将命令作为批处理运行时,它不会产生相同的结果。

ssh user@server aptitude search '!~M ~i'

由于该过程需要一些时间来运行,我在运行这两个变体时执行ps aux | grep aptitude,结果似乎是相同的。

我做错了什么?

附言。我知道 dpkg -L 可以生成此信息,但这只是损坏的最小示例,我打算使用!~pstandard !~pimportant !~prequired 也过滤掉基本包,我不相信 dpkg 可以做到(但是如果可以,欢迎使用 dpkg 的解决方案。)

【问题讨论】:

    标签: ssh debian aptitude


    【解决方案1】:

    使用来自Bash - Escaping SSH commands 的信息,我能够创建一个有效的命令:

    ssh user@server $(printf '%q ' aptitude search '!~M ~i')
    

    【讨论】:

      【解决方案2】:

      如果目标是更新的 debian/ubuntu,您可以使用:

      ssh user@server apt-mark showmanual

      【讨论】:

        猜你喜欢
        • 2017-12-03
        • 1970-01-01
        • 1970-01-01
        • 2019-01-14
        • 1970-01-01
        • 2020-02-07
        • 2020-12-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多