Piszę bardzo prosty skrypt wsadowy do uruchomienia skrótu MD5. Potrzebuję go, aby poprosić użytkownika o katalog wyjściowy, a następnie o adres IP, a następnie zamapować literę dysku na to wyjście. Mogę go zapytać, ale nie wypisuje pliku do wybranego katalogu. Umieszcza go w katalogu lokalnym, z którego skrypt został uruchomiony. Nie będzie też mapować litery dysku. Czy ktoś może mi pomóc to naprawić? Skrót MD5 należy wysłać do katalogu wybranego przez użytkownika.
@ECHO OFF
pause
REM This section prompts user for output location
:start
CLS
set /p direct="Enter the directory output location: "
dir %1 %direct% > investigation.txt
pause
REM
set /p direct="Enter the IP output location: "
dir %1 > investigation.txt
pause
REM Map share
@echo Map Share
@echo off
net use z: \\%1
pause
REM This section appends the date and time of the investigation.
@Echo Date and Time
@Echo off
date /T >> investigation.txt && time /T >> INVESTIGATION.TXT
pause
REM This step creates the MD5 hash
@echo MD5 VALUE
@echo off
MD5DEEP investigation.txt > Hash.txt
pause
REM This step creates the SHA1 hash
echo SHA1 VALUE
@echo off
SHA1DEEP investigation.txt >> Hash.txt
pause
batch-file
cmd.exe
Saemund
źródło
źródło
%1
jest używany. Jest to parametr przekazywany do pliku wsadowego podczas jego wywoływania.Odpowiedzi:
Kilka wyjaśnień
Jak to działa
Po ustawieniu ich za pomocą wartości
%Folder%
i%IP%
można zmapować ścieżkę zdalną na literęTutaj jest odwzorowany na literę
x
tworzącą wirtualnyX
dysk, zawsze podwójny cudzysłów, ponieważ folder może zawierać spacjeznaków specjalnych.Główna kwestia
Zwykły
investigation.txt
bez określonej ścieżkic:\SomeFolder\investigation.txt
utworzyłby plik w bieżącym katalogu, czyli w folderze, z którego skrypt został uruchomiony.Powinieneś więc również podać katalog, a nie tylko nazwę pliku, aby zapisać dane wyjściowe w pliku w katalogu, w którym chcesz go zapisać.
Co więcej,
%1
jest pierwszym argumentem, który jest wartość pierwszego parametru przekazanego do pliku, parametr jest co wpisać po nazwie, który jest po wywołaniu pliku, npmybatchfile.bat parameter1 parameter2
„s wartości byłoby%1
i%2
odpowiednio w pliku wsadowym.Myślę więc, że skrypt jest zły i powinieneś nauczyć się rozumieć, co robi zawartość, i poprawiać niektóre jej części.
Notatki
192.168.1.1
format, czyli cztery liczby, trzy kropki, aby działałecho %ComputerName%
źródło