小编ali*_*ind的帖子

bash 中 [变量 = 字符串替换] 的替代方案

我正在学习 bash 并试图了解进行替换并将其分配给变量的不同方法。

具体来说,我将 Unix 斜杠 ('/') 更改为 Windows ('\')。

参考:

感谢赛斯和特顿。


更新后的版本。原文在底部。

#!/bin/bash
origPath="/home/django_auth_lifecycle/urls.py"

path=$origPath
path=${path//\//\\}                      #Works
echo "Via bash (2-slash, no-g): $path"

path=$origPath
path=${path//\//\\}                      #Works
echo "Via bash (no dollar): $path"

path=$origPath
echo "${path}" | sed -e 's/\//\\/g'     #Works, but don't know how to assign to var
#echo "Via sed (slash, quotes): $path"

path=$origPath
path=$(echo "$path" | sed s/'\/'/'\\'/g)   #Works
echo "Via sed (slash, quotes): $path"

path=$origPath
path=$(echo $path | sed s:'\/':'\\':g)   #Works …
Run Code Online (Sandbox Code Playgroud)

command-line bash scripts

4
推荐指数
1
解决办法
3784
查看次数

标签 统计

bash ×1

command-line ×1

scripts ×1