我是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:]])/,}"