@@@ novinky | .py.
Ukázka využití jednoduchého několikařádkového programu "dir.py" v jazyku Python
v kombinaci se skripty CMD Windows, k vytvoření souhrnného výpisu "data.txt".
<<< skripty CMD Windows
Výsledný výpis "data.txt":
-------------------------------------------------- __doku.txt 1 Výpis obsahu souborů ve složce 2 I hlavní řídící skript _dir.cmd I skript pro výpis jednoho souboru vypis.cmd *) I program Python dir.py W seznam souborů ve složce dir.txt W pracovní skript dir.cmd O výsledný výpis data.txt *) 3 příkazy CMD Windows interperpret Python windows\py.exe editor Windows / poznámkový blok notepad.exe / WordPad wordpad.exe 4 - standardními příkazy CMD Windows je vytvořen seznam "dir.txt" - program "dir.py" ze seznamu vytvoří pracovní skript "dir.cmd" - pracovní skript opakovaně volá "vypis.cmd" - výsledek "data.txt" je zobrazen pomocí standardního editoru *) ve skriptu "vypis.cmd" je nutno potlačit výpis "data.txt", protože v době, kdy by byl vypisován ještě není úplný 5 - takto lze zpracovat jen soubory formátu "prostý text" - jména souborů nesmí obsahovat mezery, ani diakritiku (zkreslí se)
- řídící skript řeší i kontrolu (pause) a prevenci omylu (del ...) -------------------------------------------------- _dir.cmd @echo off echo. > data.txt dir *.cmd/on/b > pom.txt dir *.py/on/b >> pom.txt dir *.txt/on/b >> pom.txt sort pom.txt /o dir.txt
if exist dir.cmd del dir.cmd c:\windows\py.exe dir.py %* call dir.cmd pause rem notepad.exe data.txt "c:\program files\windows nt\accessories\wordpad.exe" data.txt -------------------------------------------------- dir.cmd call vypis.cmd __doku.txt call vypis.cmd _dir.cmd call vypis.cmd data.txt call vypis.cmd dir.cmd call vypis.cmd dir.py call vypis.cmd dir.txt call vypis.cmd pom.txt call vypis.cmd vypis.cmd -------------------------------------------------- dir.py # vytvoreni skriptu "dir.cmd" print("----- dir.py") sb1 = "dir.txt" sb2 = "dir.cmd" vystup = open(sb2, mode='w') with open(sb1) as vstup: for radek in vstup: vystup.write("call vypis.cmd "+radek) vystup.close() print("o.k.") -------------------------------------------------- dir.txt __doku.txt _dir.cmd data.txt dir.cmd dir.py dir.txt pom.txt vypis.cmd -------------------------------------------------- pom.txt _dir.cmd dir.cmd vypis.cmd dir.py __doku.txt data.txt dir.txt pom.txt -------------------------------------------------- vypis.cmd if "%1"=="data.txt" goto E echo -------------------------------------------------- %1 >> data.txt type %1 >> data.txt echo. >> data.txt :E
Modřice 5. ledna 2016 - Vlastimil Čevela