Chinaunix
标题:
用shell命令实现编辑文本
[打印本页]
作者:
luofeiyu_cu
时间:
2014-10-26 07:16
标题:
用shell命令实现编辑文本
sudo nano ~/wordpress/wp-config.php
将wp-config.php里面的三行
define('DB_NAME', 'name_here');
define('DB_USER', 'user_here');
define('DB_PASSWORD', 'password_here');
改成
define('DB_NAME', 'wpdatabase');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'dbpassword');
然后保存退出。
请用shell脚本自动完成这个过程,就是:写成一个write.sh 脚本,sh write.sh 可以自动完成这个动作。
作者:
love_shift
时间:
2014-10-26 09:47
root@ubuntu:/tmp# dbname="wpdatabase"
root@ubuntu:/tmp# dbuser="wpuser"
root@ubuntu:/tmp# dbpassword="dbpassword"
root@ubuntu:/tmp#
root@ubuntu:/tmp# sed "s/name_here/$dbname/;s/user_here/$dbuser/;s/password_here/$dbpassword/" f4
define('DB_NAME', 'wpdatabase');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'dbpassword');
复制代码
剩下交给你自己啦!
作者:
luofeiyu_cu
时间:
2014-10-26 10:46
不行,你做了一个替换操作,如果原文件有四行
define('NAME', 'name_here');
define('DB_NAME', 'name_here');
define('DB_USER', 'user_here');
define('DB_PASSWORD', 'password_here');
你就使他变成
define('NAME', 'wpdatabase');
define('DB_NAME', 'wpdatabase');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'dbpassword');
我只希望它变成
define('NAME', 'name_here');
define('DB_NAME', 'wpdatabase');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'dbpassword');
作者:
love_shift
时间:
2014-10-26 10:52
我只针对第一个贴呀,还以为关键字唯一呢。。。你自己加个匹配吧!
作者:
wiliiwin
时间:
2014-10-26 11:05
sed '/DB_NAME/{s/name_here/wpdatabase/};/DB_USER/{s/user_here/wpuser/};/DB_PASSWORD/{s/password_here/dbpassword/}' 29.txt
define('NAME', 'name_here');
define('DB_NAME', 'wpdatabase');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'dbpassword');
复制代码
作者:
luofeiyu_cu
时间:
2014-10-26 15:19
为何我这样写不行?
x="define('DB_NAME', 'user_here');"
y="define('DB_NAME', 'wpdatabase');"
sed 's/$x/$y/g' ~/wordpress/wp-config.php
这个方法为何不可以?
作者:
jason680
时间:
2014-10-26 16:14
本帖最后由 jason680 于 2014-10-26 16:22 编辑
回复
6#
luofeiyu_cu
shell 十三問?
http://bbs.chinaunix.net/forum.p ... mp;fromuid=24785593
shell 十三問? 4) " "(雙引號) 與 ' '(單引號)差在哪?
http://bbs.chinaunix.net/forum.p ... p;page=4#pid1511745
shell 十三問? Part-II: Regular Expression
http://bbs.chinaunix.net/forum.p ... ;page=16#pid2934852
作者:
moperyblue
时间:
2016-10-15 13:24
回复
6#
luofeiyu_cu
1.
x="define('DB_NAME', 'user_here');" => x="define('DB_NAME', 'name_here');"
2.
sed "s/$x/$y/g" ~/wordpress/wp-config.php
或
sed 's/'"$x"'/'"$y"'/g' ~/wordpress/wp-config.php
另解.
sed -r "1{x;s/.*/DB_NAME wpdatabase\nDB_USER wpuser\nDB_PASSWORD dbpassword/;x};G;s/(\b\S+\b)(.*').*('.*)\n\1\s(\S+)/\1\2\4\3/;P;d"
作者:
sunzhiguolu
时间:
2016-10-16 01:38
define('DB_NAME'
, 'wpdatabase');
define('DB_USER'
, 'wpuser');
define('DB_PASSWORD'
, 'dbpassword');
将带有背景色的地方完全匹配, 其他地方替换就行了.
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2