ホームページ >データベース >mysql チュートリアル >sed使用变量进行匹配替换的问题_MySQL

sed使用变量进行匹配替换的问题_MySQL

WBOY
WBOYオリジナル
2016-05-31 08:48:13858ブラウズ

环境:MacOS X 10.8.2

在MacOS下使用sed进行字符串替换,并保存到原文件中:

sed -i '' 's/源字符/目标字符/g' 文件

其中 -i 后面的单引号是设置备份文件。设置为空表示不需要备份。


* 在MacOS 10.8.2环境中,必须设置这个参数,否则不会保存到原文件中。其它版本和系统我没有环境测试,详细不知。


以下命令

sed -i '.bak' 's/源字符/目标字符/g' foobar.txt


在对文件内容进行替换并保存后,会产生一个foobar.txt.bak的备份文件。
有时候源字符和目标字符并非固定字符串,需要使用变量指定字符串内容。
sed使用变量参数有点特殊:‘ “$var ” ’ 外单引号内双引号,变量参数。当然,没有空格,这里只是为了演示才加空格。
完整的命令类似于:sed -i '' 's/'"$pattern"'/'"$target"'/g'$src_file


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。