Dos特殊字符转义方法
使用
psftp
命令连接ftp时,如果密码中包含&
等特殊字符,会出现问题,须通过转义字符^
进行转义
注意:变量里面用^
符号会自动清理掉
set connect_test=psftp 60.205.141.206 -P 54891 -l root -pw 123^&GHF
echo %connect_test%
//输出结果如下,后面被处理成命令了
windows使用sftp连接上传文件
方案一:使用 putty 提供的sftp软件
-
将软件放到一个指定文件夹中:(比如:
C:\Program Files (x86)
) -
新建一个
bat
文件,比如upload_data.bat
,内容如下://指定执行的路径为软件存放的路径,这里 set PATH=C:\Program Files (x86);%PATH% psftp 192.168.0.100 -l root -pw 13456789 < upload_data.txt
注意:
登录命令:psftp 服务器地址 -P 端口 -l 用户名 -pw 密码
,默认端口22 -
sftp的操作写在upload_data.txt里面,用法参考
//将本地D:\leangooDocument\leangoo2012文件夹上传到linux服务器/data/upload_data_backup中 cd /data/upload_data_backup lcd D:\leangooDocument\ put -r leangoo2012
-
执行批处理文件即可上传
方案二:使用ssh-for-windows连接linux
- 下载 openssh for windows 软件。
cd C:\Program Files (x86)\OpenSSH\bin
mkgroup -l >> ..\etc\group
mkpasswd -l >> ..\etc\passwd
net start opensshd
windows bat中得到当前时间
%DATE%
输出的是: yyyy/mm/dd 星期几
(例如:2008/12/18 星期四)
引用格式: %DATE:~x,y%
x
= 起始坐标,y
= 从x开始截取字符个数
//如:
%DATE:~0,4% --> yyyy
%DATE:~5,2% --> mm
%DATE:~8,2% --> dd
//所以,得到当前日期(20170418)
%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
windows cmd复制命令
set leangoo_website=D:\leangooDocument\0.部署说明\上线脚本_本地\leangoo1\leangoo%today%_website
echo d | xcopy D:\phpweb\leangoo\application %leangoo_website%\leangoo\application /e/h/y
echo d | xcopy D:\phpweb\leangoo\system %leangoo_website%\leangoo\system /e/h/y
xcopy D:\phpweb\leangoo\index.php %leangoo_website%\leangoo /y
- copy时不用手动选择是文件还是文件夹: 在xcopy命令前加上
echo d
或ehco f
/e
表示复制所有子目录,包括空目录;/h
复制具有隐藏和系统文件属性的文件
删除命令
rd命令:删除一个目录
del命令 :删除文件
用 rd
命令删除文件夹,del
命令删除文件
// /q/s使用静默模式强制删除,不会出现提示信息
rd /q/s views\images
del /a/f/q test*.*
@echo off : 关闭回显
@echo off
并不是DOS程序中的,而是DOS批处理中的。当年的DOS,所有操作都用键盘命令来完成,当你每次都要输入相同的命令时,可以把这么多命令存为一个批处理,从此以后,只要运行这个批处理,就相当于打了几行、几十行命令。
DOS在运行批处理时,会依次执行批处理中的每条命令,并且会在显示器上显示,如果你不想让它们显示,可以加一个echo off
当然,“echo off”也是命令,它本身也会显示,如果连这条也不显示,就在前面加个“@”。
cmd choice选择
快速查找文件
FOR /F %%i IN ('dir D:\leangooDocument\db\历史脚本\%year%\%today%* /b') DO @set db_target_folder=%%i
echo d | xcopy D:\leangooDocument\db\历史脚本\%year%\%db_target_folder%\*.sql %db_script_folder%\db_script /y
xcopy排除某些文件
参考: