SED在php脚本中查找/替换代码
我有一个大型php脚本,其中包含以下行SED在php脚本中查找/替换代码,sed,Sed,我有一个大型php脚本,其中包含以下行 $user=$\u请求['user'] 精确匹配在整个页面中只显示一次。我想把它改成 $user=urldecode($_请求['user']) 有人能建议最好的方法吗? 我在想SED,但我尝试过的一切都没有找到并替换它 有什么想法吗 感谢sed方法: sed -E "s/^(\\\$user = )(\\\$_REQUEST\['user'\])/\1urldecode(\2)/" file.php sed方法: sed -E "s/^(\\\$use
$user=$\u请求['user']代码>
精确匹配在整个页面中只显示一次。我想把它改成
$user=urldecode($_请求['user'])代码>
有人能建议最好的方法吗?
我在想SED,但我尝试过的一切都没有找到并替换它
有什么想法吗
感谢sed方法:
sed -E "s/^(\\\$user = )(\\\$_REQUEST\['user'\])/\1urldecode(\2)/" file.php
sed方法:
sed -E "s/^(\\\$user = )(\\\$_REQUEST\['user'\])/\1urldecode(\2)/" file.php
以下内容也会对你有所帮助
sed 's/^$user = $_REQUEST\['"'"'user'"'"'\]\;$/$user = urldecode($_REQUEST\['"'"'user'"'"'\]);/' Input_file
假设下面是输入_文件(我在这里假设)
因此,在运行上述代码之后,以下将是输出
sed 's/^$user = $_REQUEST\['"'"'user'"'"'\]\;$/$user = urldecode($_REQUEST\['"'"'user'"'"'\]);/' Input_file
^@^@^@^@00000305^@^@^@^@^@^@430^@430^@^@^@^@^@^@^@^@^@09079989530
$user = urldecode($_REQUEST['user']);
tefqfwqfb$user = $_REQUEST['user'];
wvwrjvnwvjn$user = $_REQUEST['user'];fwvwrev
以下内容也会对你有所帮助
sed 's/^$user = $_REQUEST\['"'"'user'"'"'\]\;$/$user = urldecode($_REQUEST\['"'"'user'"'"'\]);/' Input_file
假设下面是输入_文件(我在这里假设)
因此,在运行上述代码之后,以下将是输出
sed 's/^$user = $_REQUEST\['"'"'user'"'"'\]\;$/$user = urldecode($_REQUEST\['"'"'user'"'"'\]);/' Input_file
^@^@^@^@00000305^@^@^@^@^@^@430^@430^@^@^@^@^@^@^@^@^@09079989530
$user = urldecode($_REQUEST['user']);
tefqfwqfb$user = $_REQUEST['user'];
wvwrjvnwvjn$user = $_REQUEST['user'];fwvwrev
这可能适用于您(GNU-sed):
匹配字符串,然后使用替换来修改部分字符串
注意:关闭当前的单引号sed命令,引入另一个单引号,然后开始sed命令的其余部分,即在外壳上穿孔,然后引用一个引号。这可能适用于您(GNU-sed):
匹配字符串,然后使用替换来修改部分字符串
注意
“\'
关闭当前单引号sed命令,引入另一个单引号,然后开始sed命令的其余部分,即它在外壳上穿孔,然后引用一个单引号。添加您尝试的代码。。。还建议在整行中使用awk
字符串匹配,以避免必须处理元字符和您尝试的代码。。。还建议在整行使用awk
字符串匹配,以避免必须处理元字符hanks,但值$user=
会在页面中出现几次,其中as$user=$\u REQUEST['user']
只出现一次。谢谢,但是值$user=
在页面中出现了几次,其中as$user=$\u REQUEST['user']代码>仅显示一次。谢谢。你能告诉我为什么需要所有的引号和双引号吗@汤姆,不客气。这是一种告诉sed在sed通常的'bla______________________
之间有一个。意思是说,如果你简单地把'bla_bla'bla_bla'
放在一起,那么sed会抛出错误,因为它会认为block没有完成,所以要让sed知道我们的文本中间有'
,这已经完成了。谢谢。你能告诉我为什么需要所有的引号和双引号吗@汤姆,不客气。这是一种告诉sed在sed通常的'bla______________________
之间有一个。也就是说,如果你简单地把'bla_bla'bla_bla'
放进去,那么sed会抛出错误,因为它会认为block没有完成,所以要让sed知道我们的文本中间有'
。