-1
I’m with a project involving bat más I need to use a command (xcopy)
Suppose: I want that I can enter the whole directory ex: C: Users "User" directory
and be able to type in the destination ex: D: Directory of Destination
-1
I’m with a project involving bat más I need to use a command (xcopy)
Suppose: I want that I can enter the whole directory ex: C: Users "User" directory
and be able to type in the destination ex: D: Directory of Destination
1
To enter the directory, use the command set /p
:
It opens an entrance so you can insert/digest what you want to go to the variable:
set /p _nome_variável=
rem :: Opcionalmente, pode incluir um texto para exibição junto do comando, exemplo ::
set /p "_nome_variável=Texto para exibição: "
- An example of using the command
set /p
already adapted in a suggested use with thexcopy
@echo off & setlocal enabledelayedexpansion & title <nul
mode 91,10 & color 0a & title Q420630.cmd & cd. & echo=
set /p "_dir_Origem= Digite Um Diretorio Origem: " && (
dir /d "!_dir_Origem!" | findstr /l \[\.\.\] > nul && (
set /p "_dir_Destino= Digite Um Diretorio de Destino: "
if not "!_dir_Destino!\\" == "\\" goto :^? ) ) || echo=
echo= Revise os seus argumentos/parâmetros informados:
echo= "!_dir_Origem!" "!_dir_Origem!" & exit /b ...
:^?
xcopy /c /y /e /v /f /i "!_dir_Origem!" "!_dir_Destino!"
- Commenting on the code used...
@echo off & setlocal enabledelayedexpansion & title <nul
:: redimensiona tela para x/y 91 colunas e 10 linhas ::
:: muda cor para fundo preto, texto verde e adiciona ::
:: altera titulo para janela aberta, e ecoa 2 linhas ::
mode 91,10 & color 0a & title Q420630.cmd & cd. & echo=
:: Set /p para aguardar inserção de caminho/diretório ::
set /p "_dir_Origem= Digite Um Diretório Origem: " && (
:: Apenas para verificar se pasta passada é existente ::
dir /d "!_dir_Origem!" | findstr /l \[\.\.\] > nul && (
:: Após verificado que existe, pede um pasta destino ::
set /p "_dir_Destino= Digite Um Diretorio de Destino: "
if not "!_dir_Destino!\\" == "\\" goto :^? ) ) || echo=
:: Para agir em caso de inconsistência nos parâmetros
echo= Revise os seus argumentos/parâmetros informados:
echo= "!_dir_Origem!" "!_dir_Origem!" & exit /b ...
:^?
xcopy /c /y /e /v /f /i "!_dir_Origem!" "!_dir_Destino!"
:: Seu comando para a tarefa do XCOPY, entrar aqui! ::
:: Comando acima é só um exemplo de uso/teste aqui. ::
echo= xcopy [seus argumentos/parâmetros] "!_dir_Origem!" "!_dir_Destino!"
- For more help about the commands used in this response:
- Copy and run on command line:
chcp 860 & > "%temp%\help_comandos.txt" (set /? & dir /? & xcopy /? & findstr /? * title /? & setlocal /? & mode /?) & "%temp%\help_comandos.txt"
- This code will generate a file (help_commands.txt), already containing the help text on the commands used in the posted response.
- Save this file for your future queries..
Browser other questions tagged windows cmd batch windows-10 bat
You are not signed in. Login or sign up in order to post.
Support issues do not fit the scope of the site](/help/on-topic). Links to better understand how Sopt works: [Tour], [Ask], Manual on how NOT to ask questions and [Help]. If you are easy with English, you can use the site [su] which is for support issues (unfortunately we did not get a Portuguese version of this).
– Bacco