在linux bash中替换字符串
这个问题在这里已经有了答案:
围绕sed
使用双引号进行变量扩展并保留单引号。
sed -i "s/os.path.join(BASE_DIR, 'db.sqlite3'),/$project_name,/g" "$project_name/settings.py"
经过测试,在GNU sed version 4.2.1
上运行良好
你应该在'db.sqlite3'
中'db.sqlite3'
引号:
sudo sed -i 's/os.path.join(BASE_DIR, '''db.sqlite3'''),/'$project_name',/g' $projects_name/settings.py
你的sed模式是os.path.join(BASE_DIR, db.sqlite3),
因为'db.sqlite3'
中的引号不被解释为文字'
。 相反,他们关闭并重新打开sed命令。