Stránka 1 z 3
Jaký skript použít místo bat?
Napsal: 10 úno 2016 11:02
od atari
Používám dávky bat a již nedostačují. Teď například potřebuji porovnat velikost souboru.
Hlavní použití (pouze Windows): práce se soubory, zálohování a archivace dat, kopírování apod.Našel jsem, že existují tyto nejběžnějsí skriptovací jazyky:
- VBS (Visual Basic Script),
- WSH (Windows Script Host),
- KiXtart (Kick Start).
- Windows PowerShell
- PERL
- PYTHON
Jelikož jsem skripty nikdy neviděl a neovládám je, tak jsem našel tuto stránku:
http://blogs.technet.com/b/technetczsk/ ... ast-1.aspx , a rozhodl jsem se pro PowerShell, že se ho naučím (Umím trochu VBA Excel a je to v něčem podobné). Můžete mi tuto volbu potvrdit, nebo doporučit něco jiného?
Re: Jaký skript použít místo bat?
Napsal: 11 úno 2016 20:14
od Uziv00
VBS=v podstatě WSH a spouští ho stejný proces.
PowerShell má silné nástroje, ale je obtížnější.
Perl a Python jsou, pokud se nepletu linuxové jazyky.
Prohledej si tohle fórum, mám tady několik skriptů ve vbs, pokud umíš vba, bude ti to připadat stejné.
Re: Jaký skript použít místo bat?
Napsal: 15 úno 2016 15:52
od atari
Díky za tip. Mám 2 dotazy:
1. Existuje nějaký editor, který by mi kontroloval syntaxi VBScript? PSPAD to neumí, a na všech PC není Excel s editorem VBA, kde to lze také psát.
2. Nefunguje mi vlastnost FileSize viz níže. V čem je problém?. Přitom zde je popsaná že existuje:
http://ss64.com/vb/filesystemobject.html. (ovšem nevím jak je ss64.com důvěryhodná) Na Microsoftu jsem žádný pořádny seznam nenašel jenom toto:
https://msdn.microsoft.com/en-us/librar ... 60%29.aspx Existuje nějaký kompletní seznam příkazů od MS jako to má u VBA?
Kód: Vybrat vše
Set fs = CreateObject("Scripting.FileSystemObject")
s = fs.GetFileName("D:\teplomer.jpg") 'toto funguje
s = fs.GetFileSize("D:\teplomer.jpg") 'toto NEfunguje !! proč?
Msgbox s
Re: Jaký skript použít místo bat?
Napsal: 15 úno 2016 16:23
od zeus
Re: Jaký skript použít místo bat?
Napsal: 15 úno 2016 16:58
od Uziv00
Nemluvě o tom, že nejprve do s dáš název a potom ho přepíšeš na velikost?
Re: Jaký skript použít místo bat?
Napsal: 15 úno 2016 22:53
od atari
Zas tak blbej nejsem ... Tak to napíšu jinak:
Kód: Vybrat vše
'Tento kod funguje:
Set fs = CreateObject("Scripting.FileSystemObject")
s = fs.GetFileName("D:\teplomer.jpg")
Msgbox s
'Tento kod nefunguje:
Set fs = CreateObject("Scripting.FileSystemObject")
s = fs.GetFileSize("D:\teplomer.jpg") 'vlastnost Size nefungje
Msgbox s
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 08:38
od Uziv00
Co takhle?
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 09:49
od Eldan
Perl a python jsou linuxové jazyky? Cože?
Jsou to interpretované programovací jazyky jako všechny ostatní, interpret se dá nainstalovat jak na lnx, tak na win.
Osobně bych doporučil Python, spolu s Perlem jsou z jazyků které jste uvedl nejsilnější a python je běžnější a má tímpádem mnohem větší uživatelskou základnu.
Interpret se dá stáhnout z
https://www.python.org/, tam najdete i základy práce s ním. Kdybyste chtěl český web, tak
http://python.czJako editor doporučím Notepad++ (
https://notepad-plus-plus.org/), zvýrazňuje syntaxi skoro u všeho a pracuje se s ním pěkně.
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 09:53
od Uziv00
To je stejné, jako kdybych napsal - cože? Bash je linuxový interpreter? Vždyť si ho můžeš nainstalovat pro windows.
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 10:23
od Eldan
Upřímně - python je udělaný s myšlenkou multiplatformnosti, bash je portnutý protože to někomu přišlo jako dobrý nápad. Sám funguju z většiny na winu a python používám dost často, protože je prostě schopný a pracuje se v něm hodně jednoduše (a člověk nemusí nic kompilovat). Proti PS/VBS nic nemám, ale příjdou mi příliš specificky zaměřené, python je versatilní.
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 11:48
od Uziv00
Ono záleží na tom, co preferuješ.
bat a vbs fungují na windows všude, bez nutnosti jakékoli další instalace něčeho. VBS kromě toho respektuje národní prostředí, takže třeba v pondělí ti u nás na dotaz weekday(now) vrátí pondělí, ale u anglických windows monday. Což je někdy výhoda, někdy ne, ale dá se s tím pracovat. navíc spolupracuje přímo s api (class) a wmi, takže automaticky umí řídit běh systému (např. služeb, a to i vzdáleně) a spolupracuje i s mrkvosoftími officy. Což vůbec netuším, jak bych to v pythonu dělal.
Ale výběr správného jazyka je každého věc.
Re: Jaký skript použít místo bat?
Napsal: 16 úno 2016 12:55
od atari
Použití funkce „cint“ už tady ukázal zeus. Už jsme na to přišel. Objekt „GetFileSIze“ prostě VBScript nepodporuje.
Na ten Python se kouknu. Ovšem pro moje účely (zálohování a archivace) vbs zatím stačí. Ten Python se naučit by možná do budoucna bylo lepší, ale zatím dávám přednost tomu, že vbs nemusím instalovat, plus další jak píše přede mnou ITCrowd. Pravdou však také je, že Microsoft vbs přestal od roku 2001 podporovat, a zaměřil se na PowerShell. Tak doufám, že VBS ještě za 10 let a více budou WIN podporovat.