LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2723|回复: 4

Bash中如何去掉换行符

[复制链接]
发表于 2007-10-25 15:51:08 | 显示全部楼层 |阅读模式
字符串中有一个换行符,如何去掉.
发表于 2007-10-25 20:42:20 | 显示全部楼层
use sed
回复 支持 反对

使用道具 举报

发表于 2007-10-26 10:50:57 | 显示全部楼层
用个笨办法,要设置IFS变量。
  1. $ A=;IFS=$'\n';for i in $( echo "line1 is here
  2. line2 here");do echo "#$i#";A=$A$i;done;echo $A
  3. #line1 is here#
  4. #line2 here#
  5. line1 is hereline2 here
复制代码

有没有更好的方法?
回复 支持 反对

使用道具 举报

发表于 2007-10-26 12:19:48 | 显示全部楼层
也许可以用 tr

  1. #!/bin/sh
  2. xx="abc
  3. def"
  4. echo "$xx" # orig strings
  5. echo "$xx" | tr -d '\n\r' # delete \n or \r
  6. echo # a new line
复制代码
回复 支持 反对

使用道具 举报

发表于 2007-11-8 08:15:32 | 显示全部楼层
路过。
var="${var//
}"
要是想换成空格:
var="${var//
/ }"
要是想把所有空白字符都变成空格,也可以:
var=`echo $var`
或者
read -r var<<<$var
要是那个换行符就是在最后的话,可以把前两个加上引号或者:
var="${var%
}"
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表