Problem z przenoszeniem plików w bat

0

Heja mam problem z tym kodem nie wiem czemu ale nie chce mi odpalić. Pomożecie?
A i jeszcze jedna rzecz próbowałem z znacznie prostszym kodem który też nie działa choć jestem ciekawy czemu :P

@echo off

if exist "C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\HCKV2.bat"(
	start chrome.exe
)else(
move"C:\Users\%username%\Desktop\HCKV2.bat" "C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"

)

a tutaj prostszy kod

@echo off

if exist "C:\Test"(
	echo File found
	
)else(
	echo creating file
	mkdir "C:\Test"

)
move"C:\Users\%username%\Desktop\mleko" "C:\Test"
pause
0

nie bądź masochistą, użyj normalnej powłoki (bash, ewentualnie powershell jeśli kochasz Microsoft). Nie wiem jak on traktuje te braki spacji koło cudzysłowów. I co to w ogóle znaczy że się nie uruchamia?! Uruchom z poziomu cmd i jaki jest komunikat błędu?

0

Nach chodzi o to że skrypt się nie wykonuje nic się nie dzieje faktycznie mógł bym spróbować napisać to w C# i odpalić w powershellu ale podjąłem wyzwanie napisania tego w bat-cie
(poza tym w C# jestem początkującym i wiele nie umiem HTML 5, CSS trochę bat-a i troszkę C i C# ;P)

0

Jeśli upierasz się żeby używać tego #@#!#(*! to zmień @echo off na @echo on to powinien ci wypisywać po kolei wszystkie kroki, może coś się wyjaśni.

btw. pierwszy kod nie powinien nic wypisać jeśli masz @echo off, może tak naprawdę wszystko dobrze działa?

0

Nom nie stety zmiana na @echo on nic nie dała

0

a jak to uruchamiasz, daj screenshota z okienkiem cmd , panie, bo coś ci nie wierzę.

0

ja to uruchamiam za pomocą pliku .bat

0

Dodaj linijkę
Pause

I pokaż wyniki

0

Nic to samo okienko cmd pojawia się i znika

0

To nie klikaj, ale otwórz okno Wiersza Polecenia i wpisz nazwę swojego pliku, a zobaczysz problem:

E:\Marcin\Temp>test.cmd
The syntax of the command is incorrect.

Aby to naprawić wpisuj poprawnie, uwzględniając spacje odpowiednio, to zadziała.

@echo off
 
if exist "C:\test" (
    echo File found
 
) else (
    echo creating file
    mkdir "C:\test"
)

Poza tym nie C:\Users\%username%\AppData\Roaming\, ale po prostu %APPDATA% (bo potencjalnie może nie być w katalogu \Users. Ani na dysku C:)

0

Strasznie niechlujnie masz to napisanie zwróć uwagę na spacje:

@echo on 
if exist "%AppData%\Microsoft\Windows\Start Menu\Programs\Startup\HCKV2.bat" (
    start chrome.exe
) else (
    move "%USERPROFILE%\Desktop\HCKV2.bat" "%AppData%\Microsoft\Windows\Start Menu\Programs\Startup"
)
pause

Albo "klasyczną" metodą:

@echo on 
if exist "%AppData%\Microsoft\Windows\Start Menu\Programs\Startup\HCKV2.bat" GOTO startchrome    
move "%USERPROFILE%\Desktop\HCKV2.bat" "%AppData%\Microsoft\Windows\Start Menu\Programs\Startup"
GOTO koniec

:startchrome
start chrome.exe

:koniec
pause
0

bardzo serdecznie dziękuję wam za pomoc :D Dobrze że takie forum istnieje jeszcze raz dziękuję i pozdrawiam :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1