PC1: WIN7 PRO 64bit
PC2: WIN7 PRO 32bit
v ARJ32.exe je syntaxe -oRRMMDD. (komprimuje soubory od zadaného data)
zadání -o181228 funguje (to jest 28.12.2018)
zadání -o191228 dává chybu "invalid date string"
Prostě zadání do roku 18 funguje, a při zadání roku 19 nebo 20 to chybuje, ale jen v PC2 !!
V PC1 funguje i rok 19 a 20.
Zkoušel jsem v cmd "systeminfo", a oba PC mají totožnou češtinu. Ještě jsem v ovládacích panelech v "Oblast a jazyk" koukal na národní nastavení a v obou PC je totožné.
Má někdo nápad kde je problém v PC2?
záhadné chování datumu v BAT
-
- Elite Level 10.5
- Příspěvky: 10920
- Registrován: únor 12
- Bydliště: Pankrac
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
Obejdi to, pouzij forfiles pro vytvoreni list souboru.
Prazaci jo ty se maj, az kdyz si me zavolaj..
Re: záhadné chování datumu v BAT
Díky za tip, tím se to vyřešilo.
Forfiles vypíše seznam souborů s uvozovkama, což zase arj nedokáže přečíst. Ale povedlo se mi nakonec uvozovky odstranit příkazem FOR:
(Ale stejně by mě zajímalo, proč to ARJ dává tu chybu ... )
Forfiles vypíše seznam souborů s uvozovkama, což zase arj nedokáže přečíst. Ale povedlo se mi nakonec uvozovky odstranit příkazem FOR:
Kód: Vybrat vše
FORFILES /P d:\ /S /D 01.04.2020 /C "cmd /c echo @path" > D:\Batch\list1.txt
for /F "delims=" %%X in (D:\Batch\list1.txt) do echo %%~X >> D:\Batch\list2.txt
(Ale stejně by mě zajímalo, proč to ARJ dává tu chybu ... )
-
- Elite Level 10.5
- Příspěvky: 10920
- Registrován: únor 12
- Bydliště: Pankrac
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
Funkcni to je, mas tedy cas a klid na badani
Ja osobne bych tak zvidavy nebyl (nebo bych pouzil jiny packer).
Ja osobne bych tak zvidavy nebyl (nebo bych pouzil jiny packer).
Prazaci jo ty se maj, az kdyz si me zavolaj..
Re: záhadné chování datumu v BAT
Chtěl jsem přejit na jiný packer, ale žádný jiný neumí to co ARJ, takže zůstávám u něj.
- ITCrowd
- Tvůrce článků
-
Guru Level 13.5
- Příspěvky: 23605
- Registrován: březen 10
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
Packery se mění, skripty zůstávají.
Já to řeším tak, že list souborů, jméno výsledného souboru, adresáře atd. řeším vbs skriptem. Packer se použije až pro výslednou operaci. S arj jsem začínal, teď to řeším s rar.
Já to řeším tak, že list souborů, jméno výsledného souboru, adresáře atd. řeším vbs skriptem. Packer se použije až pro výslednou operaci. S arj jsem začínal, teď to řeším s rar.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Re: záhadné chování datumu v BAT
To je dobré řešení. Jenže já neprogramátor s tím vbs zatím nejsem kamarád.
Před třemi lety jsem to zkusil, a napsal jsem vbs skript, který každých 30 minut jeden soubor zabalil a ke jménu souboru přidal časové razítko a uložil do archívu. Strávil jsem nad tím půl dne. Za tu dobu bych měl hotových 10 podobných dávek bat. Tak jsem se zase k těm BAT vrátil.
Měl bys k dispozici nějaký vzorový skript, abych mohl pro začátek z něčeho vycházet?
Před třemi lety jsem to zkusil, a napsal jsem vbs skript, který každých 30 minut jeden soubor zabalil a ke jménu souboru přidal časové razítko a uložil do archívu. Strávil jsem nad tím půl dne. Za tu dobu bych měl hotových 10 podobných dávek bat. Tak jsem se zase k těm BAT vrátil.
Měl bys k dispozici nějaký vzorový skript, abych mohl pro začátek z něčeho vycházet?
- ITCrowd
- Tvůrce článků
-
Guru Level 13.5
- Příspěvky: 23605
- Registrován: březen 10
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
Teď jsem si vzpomněl, že jsi po mě chtěl nějaký vzorový skript:
Kód: Vybrat vše
'**********************************************
'* Skript 1. dne v měsíci zálohuje logy *
'* uvedené v Const. *
'* Zapisuje do logu D:\ScriptLog\zaloha.txt *
'* *
'* ITC@Script v 2.1 *
'* *
'**********************************************
' deklarace promennych
Option Explicit
Dim ForAppend, Den, Mesic, WshShell, fso, WshNet, objWMIService
Dim txtStream, CompName, strShare, Namefile, rarName, cesta, key
Dim i, colRunningServices, Env, ProcEnv, path, prikaz, Filezal
Dim objService, colFolders, objFolder
Const alarm = "D:\Prog\Alarm500\alarm500.Log"
Const GisCln = "D:\Prog\GisCln\GisCln.Log"
Const Mdd = "D:\Prog\Mdd\MDD.Log"
Const MddGrf = "D:\Prog\MddGrfSrv\MddGrfSrv.Log"
Const LogFile = "D:\ScriptLog\zaloha.txt"
'kontrola data - pokud neni 1. ukoncit skript
Den = Day(Now())
If Den <> 1 Then WScript.Quit
'WScript.Sleep 10000
ForAppend = 8
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FilesystemObject")
Set WshNet = CreateObject("WScript.Network")
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
Set txtStream = fso.OpenTextFile(LogFile, ForAppend, True)
CompName = WshNet.ComputerName
' pokud logy chybi, skonci
If Not fso.FileExists(alarm) Then neni
If Not fso.FileExists(GisCln) Then neni
If Not fso.FileExists(Mdd) Then neni
If Not fso.FileExists(MddGrf) Then neni
' vytvoreni nazvu souboru
Mesic = Month(Now())
If Den < 10 Then Den = "0" & Den
If Mesic < 10 Then Mesic = "0" & Mesic
Namefile = "Prog_log_" & CompName & "_" & Year(Now()) & Mesic & Den & ".rar"
rarName = "Prog_log_" & CompName & "_" & Year(Now()) & Mesic & Den
'WScript.Echo Namefile
'WScript.Echo rarName
' adresar existuje? If not - create
cesta = "D:\Zalohy\"
If (Not fso.FolderExists(cesta)) Then fso.CreateFolder(cesta)
' existuje jiz zaloha?
cesta = cesta & Namefile
'WScript.Echo cesta
If fso.FileExists(cesta) Then
txtStream.WriteLine Date & vbTab &Time & vbTab & "Soubor zálohy již existuje"
txtStream.Close
WScript.Quit
End If
'modifikace promenne path
Set Env = WshShell.Environment("SYSTEM")
Set ProcEnv = WshShell.Environment("PROCESS")
path = ProcEnv("ProgramFiles")
path = path & "\Winrar\"
'WScript.Echo path
Env("Path") = Env("Path") & ";" & path
'WScript.Echo Env("Path")
Filezal = alarm & " " & GisCln & " " & Mdd & " " & MddGrf
rarName = "D:\Zalohy\" & rarName
prikaz = "winrar a " & rarName & " -m5 -tsca -ac -ilog " & Filezal
WshShell.Run prikaz, True
WScript.Sleep 2000
'Test zda zaloha probehla v poradku
If fso.FileExists(cesta) Then
txtStream.WriteLine Date & vbTab & Time & vbTab & "Záloha proběhla v pořádku"
txtStream.Close
'Smazani souboru s logy
fso.DeleteFile alarm, True
WScript.Sleep 500
fso.DeleteFile GisCln, True
WScript.Sleep 500
fso.DeleteFile MddGrf, True
WScript.Sleep 500
fso.DeleteFile Mdd, True
WScript.Sleep 500
Else
txtStream.WriteLine Date & vbTab & Time & vbTab & "Záloha se nepodařila"
txtStream.Close
End If
Sub neni 'zapis do logu a skonci
txtStream.WriteLine Date & vbTab & Time & vbTab & "Nic k zálohování"
txtStream.Close
WScript.Quit
End Sub
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Re: záhadné chování datumu v BAT
Díky moc Prošel jsem to až teď, a mám k tomu 2 dotazy:
1.Tohle je pro jeden soubor: Const alarm = "D:\Prog\Alarm500\alarm500.Log"
A když budu chtít například celou složku kromě *.avi, tak zadám Const alarm = "D:\Dokumenty\*.*" a pak někam do příkazu (prikaz = "winrar a " & rarName & " -m5 -tsca -ac -ilog " & Filezal) zadám něco jako exclude *.avi (dle předepsané syntaxe). Je to tak?
2. Nějak jsem nepochopil tyto dva příkazy k čemu jsou?
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
Set txtStream = fso.OpenTextFile(LogFile, ForAppend, True)
1.Tohle je pro jeden soubor: Const alarm = "D:\Prog\Alarm500\alarm500.Log"
A když budu chtít například celou složku kromě *.avi, tak zadám Const alarm = "D:\Dokumenty\*.*" a pak někam do příkazu (prikaz = "winrar a " & rarName & " -m5 -tsca -ac -ilog " & Filezal) zadám něco jako exclude *.avi (dle předepsané syntaxe). Je to tak?
2. Nějak jsem nepochopil tyto dva příkazy k čemu jsou?
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
Set txtStream = fso.OpenTextFile(LogFile, ForAppend, True)
- ITCrowd
- Tvůrce článků
-
Guru Level 13.5
- Příspěvky: 23605
- Registrován: březen 10
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
ad 1) mělo by to tak fungovat.
ad 2) Set objWMIService ... můžeš vypustit, zapomněl jsem to smazat - ten skript totiž ukončoval služby. Ty příkazy na ukončení jsem smazal, ale odstranit objekt služeb jsem zapomněl
Set txtStream ... nastavuje objekt pro zápis do souboru pro logování - to jsou všechny ty txtStream.
Dodatečně přidáno po 28 minutách 52 vteřinách:
Ještě jsem našel něco z úplných začátků s arj:
ad 2) Set objWMIService ... můžeš vypustit, zapomněl jsem to smazat - ten skript totiž ukončoval služby. Ty příkazy na ukončení jsem smazal, ale odstranit objekt služeb jsem zapomněl
Set txtStream ... nastavuje objekt pro zápis do souboru pro logování - to jsou všechny ty txtStream.
Dodatečně přidáno po 28 minutách 52 vteřinách:
Ještě jsem našel něco z úplných začátků s arj:
Kód: Vybrat vše
'Konečný skript pro zálohování souboru wb5. fil
'verze 1.0 19.6.2003
'
'Definice proměnných
Dim Titl
Dim Soubname
Dim Rok
Dim Mesic
Dim Den
Dim Hod
Dim Adrname
Dim WshShell
Dim Prikaz
Dim slozka
Dim zaladr
Dim fso
Dim path
' Přiřazení hodnot
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FilesystemObject")
Titl = "Kontrolní hlášení"
Hod = Hour(Now())
Den = Day(Now())
Mesic = Month(Now())
Rok = Year(Now())
' Vztvoření jména souboru
If Den < 10 Then Den = "0" & Den
If Mesic < 10 Then Mesic = "0" & Mesic
If Hod < 10 Then Hod = "0" & Hod
Soubname = Mesic & Den & Hod
' Zadání adresáře a vytvoření příkazu
zaladr = "D:\zaloha\"
path = zaladr & Rok
Prikaz = "arj a d:\zaloha\" & Rok & "\" & soubname & " c:\winbase\wb5.fil"
' Kontrolní zprávy - pro zfunkčnění odstraňte apostrofy
'MsgBox "Jméno souboru: " & vbCrLf & vbCrLf & Soubname & ".arj", vbOKOnly + vbInformation, Titl
'MsgBox "Jméno složky je: " & vbCrLf & vbCrLf & path, vbOKOnly + vbInformation, Titl
'MsgBox "Bude proveden následující příkaz:" & vbCrLf & vbCrLf & Prikaz, vbOKOnly + vbExclamation, Titl
' kontrola zda cílový adresář existuje a jeho případné vytvoření
If (Not fso.FolderExists(path)) Then
If (Not fso.FolderExists(zaladr)) Then _
fso.CreateFolder(zaladr)
fso.CreateFolder(path)
End If
' Provedení příkazu
WshShell.Run Prikaz
'Konec scriptu
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Re: záhadné chování datumu v BAT
Díky za ten druhý skript, ten je takový jednodušší.
Máš nějaké doporučení v čem to edituješ?
Já na to koukal v Excelu, tam je to hezky barevné a zformátované, ale tam se to nedá ladit.
V Pspadu, to zase není barevné, je to míň přehlednější, ale také tam nelze ladit chyby.
Máš nějaké doporučení v čem to edituješ?
Já na to koukal v Excelu, tam je to hezky barevné a zformátované, ale tam se to nedá ladit.
V Pspadu, to zase není barevné, je to míň přehlednější, ale také tam nelze ladit chyby.
- ITCrowd
- Tvůrce článků
-
Guru Level 13.5
- Příspěvky: 23605
- Registrován: březen 10
- Pohlaví:
- Stav:
Offline
Re: záhadné chování datumu v BAT
Existuje progámek, který používám - vbsedit: https://www.vbsedit.com/
Obsahuje i základní funkce a třídy. Není to přímo freeware, jsou tam některé funkce omezeny. Ladit umí, i s breakpointy, ale každým spuštěním se přidává na odpočtu, takže čekáš. A nejdou kompilace do .exe.
Já to dělám tak, že v něm edituju, uložím, poklepáním spustím, opravím chybu, uložím atd...
Obsahuje i základní funkce a třídy. Není to přímo freeware, jsou tam některé funkce omezeny. Ladit umí, i s breakpointy, ale každým spuštěním se přidává na odpočtu, takže čekáš. A nejdou kompilace do .exe.
Já to dělám tak, že v něm edituju, uložím, poklepáním spustím, opravím chybu, uložím atd...
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 1
- 875
-
od liborek
Zobrazit poslední příspěvek
24 čer 2023 18:53
-
- 4
- 2039
-
od atari
Zobrazit poslední příspěvek
16 čer 2023 08:19
-
-
Libre Office Calc - Divné chování při kopírování textu Příloha(y)
od EZumrova » 02 dub 2024 08:12 » v Kancelářské balíky - 14
- 2141
-
od kecalek
Zobrazit poslední příspěvek
05 dub 2024 19:11
-
Zpět na “Windows 11, 10, 8...”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 17 hostů