XOR
(XOR)
2 Luty 2016 22:11
#1
Witam,
Czy w skrypcie BAT można jakoś wstawić pustą linię do pliku używając przekierowania?
Zależy mi na czymś takim
pusta linia
====
wynik komendy
pusta lnia
===
wynik komendy
itd
W skrypcie mam:
dir /b ścieżka >> plik.log && echo ===>> plik.log
Niestety, gdy na początku chcę dodać pustą linię: echo. >> plik.log , czyli
echo. >> plik.log && dir /b ścieżka >> plik.log && echo ===>> plik.log
otrzymuję w pliku tekstowym:
ECHO jest wyłączone
wynik komendy (dir /b)
===
Nie rozumiem czemu pojawia się komunikat ECHO jest wyłączone zamiast pustej linii.
XOR
(XOR)
3 Luty 2016 08:47
#3
Tak jak pisałem powyżej tak robiłem, ale dostaję w pliku tekstowym zamiast pustej linii komunikat: ECHO jest wyłączone.
XOR
(XOR)
3 Luty 2016 13:34
#5
Tak jak w pierwszym poście. Kropka jest.
bachus
(bachus)
3 Luty 2016 13:43
#6
Na początku batcha jest coś w stylu “@echo off”?
XOR
(XOR)
3 Luty 2016 14:13
#7
Tak, jest i chciałbym, żeby nie było widać komend w trakcie wykonywania skryptu. Poza tym, gdy daję echo on zamiast pustej linii mam…ECHO jest włączone A jak to jest u ciebie?
drunkula
(drunkula)
3 Luty 2016 15:11
#8
To na prawdę powinno działać, zobacz:
d:\VDI\Win10>type runme.bat
@echo off
echo. >> plik.log && dir /b >> plik.log && echo ===>> plik.log
d:\VDI\Win10>runme.bat
d:\VDI\Win10>type plik.log
plik.log
runme.bat
Win10
===
Zarówno na XP, jak i WIn 7 wynik taki sam. Pozbyłem się ścieżki, ale nie ma ona znaczenia - to i tak inna linia.
XOR
(XOR)
3 Luty 2016 16:44
#9
Działa, ale okazuje się, że problem pochodzi z innej części “kodu”.
drunkula
(drunkula)
3 Luty 2016 19:54
#10
Na moje, to replace przyjmuje wartość NULL , ergo przekazujesz echo bez kropki.
XOR
(XOR)
3 Luty 2016 20:20
#11
Ale również robi co ma robić ponieważ usuwa faktycznie ciąg liter “zdjecia”.
http://ss64.com/nt/syntax-replace.html
drunkula
(drunkula)
3 Luty 2016 20:57
#12
Ech… leniuszek, 30 minut czekania zamiast 30 sekund szukania ;-)
IF DEFINED variable command
The DEFINED conditional works just like EXISTS except it takes an environment variable name and returns true if the environment variable is defined.
edit: tak samo możesz z IF NOT […] ECHO “Brak wyników”. Więcej info pod IF /?