LINUX SHELL 正则处理汉字 问题

sight88 2008-01-24 12:18:28

功能进行替换 一串字符最后以 "); 结束的字符

在LINUX的命令行可以执行,
echo 発生"); | sed "s/[\");]*$//"
输出:発生

为什么写在SHELL里却执行不了
JOB_MAIL_CONTENT=`echo 発生"); | sed "s/[\");]*$//"`
输出:発生");

注: 如果是英数没问题
...全文
317 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cceczjxy 2008-01-25
  • 打赏
  • 举报
回复
引号没转义
xdspower 2008-01-25
  • 打赏
  • 举报
回复
其实楼主的问题就是引号没有配对
这个在vim等支持高亮格式提示的编辑器中可以比较方便的发现问题。
sight88 2008-01-24
  • 打赏
  • 举报
回复
発生"); 是个常量,从文件里读出来的加不了
celetium 2008-01-24
  • 打赏
  • 举报
回复
発生"); 这个要写成 "発生\");"吧?

另外,在文件第一行写上#! /bin/ksh
sight88 2008-01-24
  • 打赏
  • 举报
回复
xdspower IS OK
xdspower 2008-01-24
  • 打赏
  • 举报
回复
怎么看怎么别扭:
JOB_MAIL_CONTENT=`echo '発生\"); ' ¦ sed "s/\");*$//"`
应该可以来吧
sight88 2008-01-24
  • 打赏
  • 举报
回复
文件第一行写上#! /bin/ksh 这个也没用

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧