V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
css3
V2EX  ›  程序员

想用 shell 在文本文件中插入一个空格,怎么弄

  •  
  •   css3 · May 6, 2019 · 3472 views
    This topic created in 2554 days ago, the information mentioned may be changed or developed.

    想保持 test.txt 文件中,每个 key 后边的冒号有且只有一个空格,应该怎么处理

    # text.txt
    a: 1 # 标准格式
    b:2
    c:   3
    d:
    
    6 replies    2019-05-06 19:34:32 +08:00
    heixiaobai
        1
    heixiaobai  
       May 6, 2019   ❤️ 1
    sed "s/:[ ]*/: /" test.txt > test_sed.txt
    css3
        2
    css3  
    OP
       May 6, 2019
    @HeiXiaoBai
    文件里边有这样一行,k1 和 k2 后边的冒号中的空格,您这个好像不生效
    abc: [{"k1": "v1", "k2": "v2"}]
    heixiaobai
        3
    heixiaobai  
       May 6, 2019
    sed "s/:[ ]*/: /g" test.txt
    kaliu
        4
    kaliu  
       May 6, 2019
    @css3
    sed "s/:[ ]*/: /g" test.txt > test_sed.txt
    ifaii
        5
    ifaii  
       May 6, 2019
    perl -pe 's/^(\S+?\:)( *)(.*)$/\1 \3/' test.txt > new_text.txt

    测试文本

    abc:[{"k1": "v1", "k2":"v2"}]
    xxxa:sd:asdasdas
    abc:[{"k1": "v1", "k2":"v2"}]
    abc: [{"k1": "v1", "k2": "v2"}]
    # asdasdasd asdd: ss
    css3
        6
    css3  
    OP
       May 6, 2019
    @css3 @HeiXiaoBai @kaliu @ifaii 多谢各位,已完美解决
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2697 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 03:08 · PVG 11:08 · LAX 20:08 · JFK 23:08
    ♥ Do have faith in what you're doing.