分页: 1 / 1
shell替换字符串的问题
发表于 : 2010-09-06 9:32
由 tutuvip
现在我想在shell中吧一串字符替换成路径
#/bin/bash
#
echo "输入jboss的安装路径"
read path
echo "path=$path"
sed ‘s/JbossHome/$path/g’ test.sh
这个脚本想把JbossHome替换成path的内容
我怎么才能做到呢~~

Re: shell替换字符串的问题
发表于 : 2010-09-06 9:38
由 eexpress
搜索字符串的掐头去尾。
5.字符串的掐头去尾
☎ echo ${variable#startletter*endletter} # #表示掐头,因为键盘上#在$前面,一个表示最小匹配
☎ echo ${variable##tartletter*endletter} 两个表示最大匹配
☎ echo ${variable%startletter*endletter} # %表示去尾,因为键盘上%在$后面,一个表示最小匹配
☎ echo ${variable%%startletter*endletter} 两个表示最大匹配
6.字符(串)的替换
☎ echo ${variable/oldletter/newletter} #替换一个
☎ echo ${variable//oldletter/newletter} #替换所有
Re: shell替换字符串的问题
发表于 : 2010-09-06 9:39
由 eexpress
额。你是一个文件内部替换?那是sed -i
Re: shell替换字符串的问题
发表于 : 2010-09-06 9:43
由 tutuvip
我想替换一个文件内部的,就是想把JbossHome这个替换成$path的内容
但是我不知道该怎么做才好~~~

Re: shell替换字符串的问题
发表于 : 2010-09-06 14:45
由 astolia
使用
代码: 全选
sed -i "s/JbossHome/$path/g" test.sh
Re: shell替换字符串的问题
发表于 : 2010-09-06 19:05
由 aerofox
代码: 全选
sed -i "s:JbossHome:$path:g" test.sh
Re: shell替换字符串的问题
发表于 : 2010-09-06 19:23
由 tusooa
代码: 全选
sed -i 's!JbossHome!'"$path"'!g' somefile
Re: shell替换字符串的问题
发表于 : 2010-09-07 13:03
由 tutuvip

谢谢LS和LSS的,搞定了~