bash - Single-quote part of a line using sed or awk -
convert input text follows, using sed or awk:
input file:
113259740 qa test in progress 219919630 uat test in progress expected output:
113259740 'qa test in progress' 219919630 'uat test in progress'
you try gnu sed command also,
sed -r "s/^( +) ([0-9]+) (.*)$/\1 \2 '\3'/g" file ^( +), catches 1 or more spaces @ starting , stored in group(1).([0-9]+)- after catching 1 or more spaces @ starting, next matches space after , fetch numbers next space store in group(2).(.*)$- fetch characters next numbers upto last character , store in group(3).all fetched groups rearranged in replacement part according desired output.
example:
$ cat ccc 113259740 qa test in progress 219919630 uat test in progress $ sed -r "s/^( +) ([0-9]+) (.*)$/\1 \2 '\3'/g" ccc 113259740 'qa test in progress' 219919630 'uat test in progress'
Comments
Post a Comment