我正在解决我在 Linux 下的 Firefox 中闪存性能不佳的问题。
我想知道以下代码是否安全。输入不受信任,我觉得如果不进行清理,可能会很危险。
#!/bin/bash
#in="vlc://www.youtube.com/watch?v=yVpbFMhOAwE"
in=$1;
out=`echo $in | sed -r 's/vlc:\/\/www\.youtube\.com\/watch\?v=([-_a-zA-Z0-9]*).*$/\1/g'`;
vlc "http://www.youtube.com/watch?v=$out";
编辑 1:根据 Jan Hudec 的评论,我来到了这个
#!/bin/bash
#in="vlc://www.youtube.com/watch?v=yVpbFMhOAwE"
in=$1;
if [ `expr "$in" : '^vlc://www.youtube.com/watch?v=[-_a-zA-Z0-9]*$'` -gt 0 ]
then
vlc "http${in:3}";
fi
编辑 2(可能是最终版本):
#!/bin/bash
#in="vlc://www.youtube.com/watch?v=yVpbFMhOAwE"
in=$1;
if expr "$in" : '^vlc://www.youtube.com/watch?v=[-_a-zA-Z0-9]*$' >/dev/null
then
vlc "http${in:3}";
fi