remove comma from last line

后端 未结 3 1065
攒了一身酷
攒了一身酷 2020-12-19 04:26

How do I remove the comma from the last line of the file? Here is the file:

# cat ox_data_archive_r_20120727.json
{\"name\": \"secondary_ua\",\"type\":\"STRI         


        
相关标签:
3条回答
  • 2020-12-19 04:34

    This should work:

    sed '$ s/,$//g' input_file
    
    • The first $ selects the last line.

    You could add -i and sed will apply the changes to your input_file.

    0 讨论(0)
  • 2020-12-19 04:34

    The awk answer is certainly more verbose than the sed:

    awk 'NR>1 {print prev} {prev=$0} END {sub(/,$/,"", prev); print prev}' file
    
    0 讨论(0)
  • 2020-12-19 04:54
    $ cat input.txt
    {"name": "secondary_ua","type":"STRING"},
    {"name": "request_ip","type":"STRING"},
    {"name": "cb","type":"STRING"},
    $ sed '$s/,$//' < input.txt
    {"name": "secondary_ua","type":"STRING"},
    {"name": "request_ip","type":"STRING"},
    {"name": "cb","type":"STRING"}
    

    From the documentation of GNU sed:

    $: This address matches the last line of the last file of input, or the last line of each file when the -i or -s options are specified.

    0 讨论(0)
提交回复
热议问题