You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux中如何为一行内的每个单词首尾添加单引号

Linux下将空格分隔字符串转换为带单引号+逗号格式的方法

方法1:使用sed命令

echo "Hello how are you" | sed "s/\s\+/'\', '/g; s/^/'/; s/$/'/"
  • s/\s\+/'\', '/g:将所有连续空白字符替换为 ', '
  • s/^/'/:在字符串开头添加单引号
  • s/$/'/:在字符串结尾添加单引号

方法2:使用awk命令

echo "Hello how are you" | awk '{for(i=1;i<=NF;i++) printf "'\''%s'\''%s", $i, (i==NF?"\n":", ")}'
  • 遍历输入行的每个字段(NF代表当前行的字段总数)
  • 对每个字段用单引号包裹,最后一个字段后输出换行符,其余字段后追加 ,

方法3:使用tr+paste组合命令

echo "Hello how are you" | tr ' ' '\n' | paste -sd "', '" - | sed "s/^/'/; s/$/'/"
  • tr ' ' '\n':将空格替换为换行符,让每个单词单独占一行
  • paste -sd "', '" -:用 ', ' 作为分隔符,将所有行拼接成一行
  • 最后通过sed补全开头和结尾的单引号

内容的提问来源于stack exchange,提问作者sivakumar V

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 03:27:03