如何在windons bat 脚本接受用户输入参数

如何在windonsbat脚本接受用户输入参数@echoofftitleCopyfilefoldertolocalcolor0A@echooffecho=========... 如何在windons bat 脚本接受用户输入参数
@echo off
title Copy file folder to local
color 0A
@echo off
echo ===========Start to copt data===========
xcopy \\10.9.102.20\CTU-Shared E:\dept\Shared /s/d/y
dir E:\dept\Shared\*.* > E:\download\log.txt
echo off
pause > nul
我想实现,用户输入源文件地址 和 目的文件地址
然后XCOPY会接受到这2个参数实现拷贝
展开
 我来答
littleant1111
推荐于2017-11-25 · TA获得超过340个赞
知道小有建树答主
回答量:361
采纳率:0%
帮助的人:270万
展开全部
=====================================代码=================================
@echo off&setlocal enabledelayedexpansion&title Copy file folder to local
color 0A
echo ===========Start to copy data===========
:start
cls
echo.请输入你要拷贝的源文件地址,比如:C:\dept\shared
set /p input_source=
echo.请输入目的文件地址,如:D:\1
set /p input_dist=
if not exist "!input_source!" echo.你输入路径不存在!!&goto :start
if not exist "!input_dist!" echo.你输入路径不存在!!&goto :start
xcopy !input_source! !input_dist! /s/d/y 1>nul 2>nul&&echo 拷贝完成!||echo 拷贝失败!
pause
===============================代码结束===================================
希望对你有帮助,望采纳!
crystalstar0
高粉答主

2018-04-08 · 说的都是干货,快来关注
知道小有建树答主
回答量:190
采纳率:98%
帮助的人:6万
展开全部

@echo off&setlocal enabledelayedexpansion&title Copy file folder to local

color 0A

echo

===========Start to copy data===========

:start

cls

echo.请输入你要拷贝的源文件地址,比如:C:\dept\shared

set /p input_source=

echo.请输入目的文件地址,如:D:\1

set /p input_dist=

if not exist "!input_source!" echo.你输入路径不存在!!&goto :start

if not exist "!input_dist!" echo.你输入路径不存在!!&goto :start 

xcopy !input_source! !input_dist! /s/d/y 1>nul 2>nul&&echo 拷贝完成!||echo 拷贝失败!

pause

windons bat 脚本简单批处理内部命令:

一、Echo 命令 

打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。 

1、语法:

echo [{on│off}] [message] 

Sample:@echo off / echo hello world 在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。 

2、@ 命令:

表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令了。 

Sample:@echo off 

@echo Now initializing the program,please wait a minite... 

@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,但是autoset这个参数效果和/y是一样的。)

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘻哈105627
2012-05-31
知道答主
回答量:41
采纳率:0%
帮助的人:21.6万
展开全部
从批处理程序调用另一个批处理程序。

CALL [drive:][path]filename [batch-parameters]

batch-parameters 指定批处理程序所需的命令行信息。

如果命令扩展名被启用,CALL 会如下改变:

CALL 命令现在将卷标当作 CALL 的目标接受。语法是:

CALL:label arguments

一个新的批文件上下文由指定的参数所创建,控制在卷标被指定
后传递到语句。您必须通过达到批脚本文件末两次来 "exit" 两次。
第一次读到文件末时,控制会回到 CALL 语句的紧后面。第二次
会退出批脚本。键入 GOTO /?,参看 GOTO : EOF 扩展名的描述,
此描述允许您从一个批脚本返回。

另外,批脚本文本参数参照(%0、%1、等等)已如下改变:

批脚本里的 %* 指出所有的参数(如 %1 %2 %3 %4 %5 ...)

批参数(%n)的替代已被增强。您可以使用以下语法:

%~1 - 删除引号("),扩充 %1
%~f1 - 将 %1 扩充到一个完全合格的路径名
%~d1 - 仅将 %1 扩充到一个驱动器号
%~p1 - 仅将 %1 扩充到一个路径
%~n1 - 仅将 %1 扩充到一个文件名
%~x1 - 仅将 %1 扩充到一个文件扩展名
%~s1 - 扩充的路径指含有短名
%~a1 - 将 %1 扩充到文件属性
%~t1 - 将 %1 扩充到文件的日期/时间
%~z1 - 将 %1 扩充到文件的大小
%~$PATH : 1 - 查找列在 PATH 环境变量的目录,并将 %1
扩充到找到的第一个完全合格的名称。如果环境
变量名未被定义,或者没有找到文件,此组合键会
扩充到空字符串

可以组合修定符来取得多重结果:

%~dp1 - 只将 %1 扩展到驱动器号和路径
%~nx1 - 只将 %1 扩展到文件名和扩展名
%~dp$PATH:1 - 在列在 PATH 环境变量中的目录里查找 %1,
并扩展到找到的第一个文件的驱动器号和路径。
%~ftza1 - 将 %1 扩展到类似 DIR 的输出行。

在上面的例子中,%1 和 PATH 可以被其他有效数值替换。
%~ 语法被一个有效参数号码终止。%~ 修定符不能跟 %*
使用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式