只删除bash中字符串中每个逗号后面出现的空白

  • 本文关键字:空白 bash 删除 字符串 bash
  • 更新时间 :
  • 英文 :


我是bash的新手,想知道最好的方法来删除字符串中每个逗号之后可用的空白。例如,我有以下输入字符串:

abc, xyz,  cdf axy bnz cnm

结果字符串应该是:

abc,xyz,cdf axy bnz cnm

您可以使用sed

$ sed -E 's/, +/,/g' input_file
abc,xyz,cdf axy bnz cnm

打开extglob选项,并使用参数展开模式替换:

#!/usr/bin/env bash
str="abc, xyz,  cdf axy bnz cnm"
shopt -s extglob
printf "%sn" "${str//,+([[:space:]])/,}"