首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
拉勾
V2EX  ›  Linux

分享一句自己刚写的命令

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

    for i in $(cat a b c | grep '^ii' | awk '{print $2}' | sort | uniq); do [ "$(grep "ii $i " a)" ] && [ "$(grep "ii $i " b)" ] && [ "$(grep "ii $i " c)" ] && sed -i "/ii $i /d" a b c; done

    安装 Debian 时有好几个备选,有个 standard system utilities。想搞清楚这个东西时包含哪些东西,就安装了三个虚拟机:一个什么也不选,装出来的系统最干净,只有最基本的系统;一个只选了 standard system utilities 这个选项;最后一个只选了 gnome 桌面环境。然后三个装好的系统都导出 dpkg -l 结果。三个文件分别命名主 a b c。上面的命令就是把三个里面都有的包删掉,这样就知道那个 standard system utilities 选项里有哪些东西了。写这个命令写了一天,很有意思。哈哈。

    regex 写成这样"ii $i "是防止包的描述里出现包的名字。这个命令大家有更好的写法吗。。。

    第 1 条附言  ·  49 天前
    才知道 uniq 的-c。。果然好用
    修改前半部分后:
    for i in $(cat a b c | grep "^ii" | awk '{print $2}' | sort | uniq -c | grep "^ 3" | awk '{print $2}'); do sed -i "/ii $i /d" a b c; done

    只留包名和包的描述(-c 35-78 部分受系统里最长包名影响):
    cat c | cut -c 35-78 --complement | cut -c 1-4 --complement
    第 2 条附言  ·  49 天前
    ii 和$i 之间是 2 个空格,^和 3 之间是 6 个空格
    15 回复  |  直到 2019-01-31 11:25:39 +08:00
        1
    quinoa42   49 天前 via Android
    呃。。用 python 写可能只要 10 分钟
    我也喜欢自己写些 bash 脚本,但有些情况不能太走火入魔
        2
    oott123   49 天前
    cat a b c | sort | uniq -c | grep -v "^\s3"
        3
    guog   49 天前
    diff3 a b c
        4
    prolic   49 天前
    换我就直接 vimdiff a b c 看
        5
    dorothyREN   49 天前
    a b c 文件直接合并 然后 sort| uniq -c 重复次数为 3 的就是三个都有的。
        6
    hei1000   49 天前
    我有好多自己写的命令(脚本,函数,alias ),不过 shell 我用的 fishshell
        9
    auv1107   49 天前
    grep 两个文件,结果和第三个文件 grep
        10
    May725   49 天前
    各领风骚
        11
    loading   49 天前 via Android
    喔,这种看不懂的脚本我根本不敢跑。
        12
    Lax   49 天前
    有点走火入魔
        13
    scukmh   49 天前
    这种脚本我不敢跑(
        14
    ivamp   48 天前
    @bingu 好东西呀
        15
    lulinux   48 天前 via Android
    sed -i 命令有点危险,其他还好
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2541 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 19ms · UTC 15:13 · PVG 23:13 · LAX 08:13 · JFK 11:13
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1