分享一句自己刚写的命令 - V2EX
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
blender2017
V2EX    Linux

分享一句自己刚写的命令

  •  
  •   blender2017 Jan 30, 2019 5784 views
    This topic created in 2670 days ago, the information mentioned may be changed or developed.

    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 "是防止包的描述里出现包的名字。这个命令大家有更好的写法吗。。。

    Supplement 1    Jan 30, 2019
    才知道 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
    Supplement 2    Jan 30, 2019
    ii 和$i 之间是 2 个空格,^和 3 之间是 6 个空格
    15 replies    2019-01-31 11:25:39 +08:00
    quinoa42
        1
    quinoa42  
       Jan 30, 2019 via Android
    呃。。用 python 写可能只要 10 分钟
    我也喜欢自己写些 bash 脚本,但有些情况不能太走火入魔
    oott123
        2
    oott123  
       Jan 30, 2019
    cat a b c | sort | uniq -c | grep -v "^\s3"
    guog
        3
    guog  
       Jan 30, 2019
    diff3 a b c
    prolic
        4
    prolic  
       Jan 30, 2019
    换我就直接 vimdiff a b c 看
    dorothyREN
        5
    dorothyREN  
       Jan 30, 2019
    a b c 文件直接合并 然后 sort| uniq -c 重复次数为 3 的就是三个都有的。
    hei1000
        6
    hei1000  
       Jan 30, 2019
    我有好多自己写的命令(脚本,函数,alias ),不过 shell 我用的 fishshell
    auv1107
        9
    auv1107  
       Jan 30, 2019
    grep 两个文件,结果和第三个文件 grep
    May725
        10
    May725  
       Jan 30, 2019
    各领风骚
    loading
        11
    loading  
       Jan 30, 2019 via Android
    喔,这种看不懂的脚本我根本不敢跑。
    Lax
        12
    Lax  
       Jan 30, 2019
    有点走火入魔
    scukmh
        13
    scukmh  
       Jan 30, 2019
    这种脚本我不敢跑(
    ivamp
        14
    ivamp  
       Jan 31, 2019
    @bingu 好东西呀
    lulinux
        15
    lulinux  
       Jan 31, 2019 via Android
    sed -i 命令有点危险,其他还好
    About     Help     Advertise     Blog     API     FAQ     Solana     2937 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 90ms UTC 08:09 PVG 16:09 LAX 01:09 JFK 04:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86