商务网站建设课程,电商网站建设关键词优化,清河做网站,两个wordpress一、连接符1、双引号不要求双引号闭合举例#xff1a;whoami //闭合的 whoami //不闭合的2、圆括号必须在两边#xff0c;不能包括中间的字符。举例#xff1a;((whoami))3、^符号#xff08;转译符号#xff09;不可以在结尾whoami //闭合的 whoami //不闭合的2、圆括号必须在两边不能包括中间的字符。举例((whoami))3、^符号转译符号不可以在结尾同样不要求闭合不能同时连续加2个^符号因为^号是cmd中的转义符跟在他后面的符号会被转义举例wh^o^a^mi4、常规替换%变量名:需要替换的内容值%如下举个例子符号能够将值传递到前面的环境变量中如下就是将test传到calc的位置输出将是ctestalc。 cmd /c set xcalc echo %x:test% | cmd二、set命令和Windows变量%任意字符%默认为空值。set用来设置一个变量%%括起来的用来引用变量举例如下set awhoami //设置变量a1
echo a //输出一个a字符
echo %a% //输出变量a的值
%a% //直接引用a变量内的值进行执行多环境变量合并拼接利用cmd /cset aser set bne set ct ucall %b%%c%%a%cmd /c string:表示执行字符串string指定的命令然后终止。cmd /V:ON /C set aser set bne set ct u !b!!c!!a!/v:on : 启用延迟的环境变量扩展,启用的话可以不使用call命令来扩展变量使用%var%或!var!来扩展变量也就是可以使用感叹号字符来替代运行时的环境变量值。三、切割字符串命令行中存在类似php和python之类的语言中截取字符串的用法。截取字符串的语法%变量名:~x,y%即对变量从第x个元素开始提取总共取y个字符。当然也可以写-x,-y从后往前取写作-x可取从后往前数第x位的字符开始一直到字符的末尾-y来决定少取几个字符举例如下set awhoami
echo %a%
%a:~0% //取出a的值中的所有字符 //此时正常执行whoami
%a:~0,6% //取出a的值从第0个位置开始取6个值 //此时因为whoami总共就6个字符所以取出后正常执行whoami
%a:~0,5% //取5个值whoam无此命令
%a:~0,4% //取4个值whoa无此命令echo %a%
echo %a:~-5% //从后往前5个字符
echo %a:~-5,-1% //从后往前5个字符并且去掉最后一个
echo %a:~-5,1% //从后往前5个词组并且值展示第一个字符综合利用先用set命令查看所有的环境变量及值然后根据自己想要的命令进行截取拼接。空格被过滤的情况下也可以根据set变量的值中有空格的值进行提取。四、for循环拼接命令For循环经常被用来混淆处理cmd命令使得cmd命令看起来复杂且难以检测。最常用的For循环参数有 /L,/F参数。格式为for 参数 %变量名 in (相关文件或命令) do 执行的命令具体利用for /L %variable in (start,step,end) do command [command-parameters]该命令表示以增量形式从开始到结束的一个数字序列。使用迭代变量设置起始值(start).然后逐步执行一组范围的值直到该值超过所设置的终止值 (end)。/L 将通过对start与end进行比较来执行迭代变量。如果start小于end就会执行该命令否则命令解释程序退出此循环。还可以使用负的 step以递减数值的方式逐步执行此范围内的值。例如(1,1,5) 生成序列 1 2 3 4 5而 (5,-1,1) 则生成序列 (5 4 3 2 1)。举例利用cmd /C for /L %i in (1,1,5) do start cmd //会执行打开5个cmd窗口FOR /F [options] %variable IN (file-set) DO command [command-parameters]
FOR /F [options] %variable IN (string) DO command [command-parameters]
FOR /F [options] %variable IN (command) DO command [command-parameters](file-set) 为文件名for会依次将file-set中的文件打开并且在进行到下一个文件之前将每个文件读取到内存按照每一行分成一个一个的元素忽略空白行。(string)代表字符串(command)代表命令。举例利用假如文件aa.txt中如下内容第1行第1列 第1行第2列;第1行第3列;第1行第4列
第2行第1列 第2行第2列;第2行第3列;第2行第4列参数一for /F %i in (aa.txt) do echo %i //默认以空格或者Tab键作为分隔符参数二for /F delims; %i in (aa.txt) do echo %i //将;作为分隔符进行分割参数三for /F tokens2 delims; %i in (aa.txt) do echo %i //指定用; 作为分隔符并且提取第2列数据 在实战中利用文件aa.txt中内容为自己的命令whoami systeminfo
ipconfig dir参数一for /F %i in (aa.txt) do %i //直接执行第一行第一个和第二行第一个参数的命令参数二for /F tokens2 delims %i in (aa.txt) do %i //指定用 空格 作为分隔符并且执行第二列参数命令五、绕过空格过滤(1) 常规执行方式直接用%26替换空格(2) echo输出绕过空格通过绕过echo test123中的空格举例http://xxxx.com/test.php?addrbaidu.com%26echotest123(3)逗号和分号逗号与分号某些情况可以当作一个终止符号或者代替空格。