我有一个文件 test.txt,它已经包含一些名为“export website_URL”和“export username=”的数据
test.txt
export username=
export website_URL=
export port=
start.sh
read -p "USERNAME: " username
read -p "web_URL: " website_URL
read -p "port: " port
此处从 test.txt 创建新文件,将数据写入 data.txt 文件
old_file="test.txt"
new_file="data.txt"
cp -f $old_file $new_file
sed -i 's/username=*/username=" $new_file
sed -i 's/website_URL=*/website_URL=" $new_file
如果我将输入放入 website_URL="http://stackoverflow.com/questions/6543841/php-cli-getting-input-from-user-and-then-dumping-into-variable-possible",则会失败并显示 sed: -e expression #1, char 71:unknown option to `s' this error 。 那么我可以在 website_URL 变量中存储任何 url 值吗? 如果我缺少什么,请告诉我,因为它能够存储用户名和端口的值
最佳答案
这是因为 URL 中存在反斜杠
url=echo $website_URL= | sed -e "s/\//\\\\\\\\//g"
sed -i 's/website_URL=*/website_URL='$url'/' $new_file
试试这个,它会适合你的情况。
关于linux - 使用 shell 脚本将用户的输入 URL 附加到文件中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43367164/