Skrypty w windows?

0

Hmm nie wiem specjalnie gdzie umieścić ten temat.

Czy można pisać skrypty pod windą? Znalazłem trop -> batch files. Czyli pliki o rozszerzeniu .bat
Czy dają takie same możliwości jak pod linuxem? Czy jest jakiś dobry tutorial, pdf?

0

Raczej daja mniej mozliwosci niz w linuxie. oto przyklad batch'a

dir
pause
ping wp.pl

czyli podobnie jak w linuxie. w kazdej linijce jest polecenie systemowe lub nazwa jakiegos pliku wykonywalnego (com, exe, bat). oczywiscie jest poleceni "if". w pisz w commandzie if /? a sie dowiesz. co do tutoriali, to nie wiem. poszukaj na google to znajdziesz.

0

skrypty bat dają bardzo malutkie możliwości, lepiej już jak pod winde to .vbs albo .js

skrypty .bat właściwie ograniczają się do uruchomienia kilku programów w określonej kolejności np patcha przed grą :] są wprawdzie pętle w stylu

:petla
cos
goto peta

i mało rozwinięte polecenie "if" którym możesz sprawdzić parametry uruchomienia skryptu, istnienie pliku i errorlevel zwracany przez jakiś program - jak się odpowiednio pokombinuje to można coś napisać ale to jest bardzo wnerwiające i w ogóle - kiedyś napisałem kilka prostych gier w zwykłych plikach wsadowych bat :D a tak w ogóle to bat to bardziej pod dosa

jakiś kursik VBS znalazłem na http://vb4all.canpol.pl/vbm/czytam/vbm25/data/vbs1.htm - w vbs możesz robić to co w bat (;)) plus grzebanie w rejestrze, zaawansowane sprawdzanie zmiennych, grzebanie w plikach, odwoływanie się do excela/worda etc.

0

No tak ale pozostaja jescze vbs, js itd. a te daja duze mozliwosci

0

przecie kurde o tym napisałem :-/

0

dodam jeszcze, ze skrypty pod linuxa sa lepsze, bo sa pod linuxa :) jednym z powodow sa dostepu do pliku. plik moze byc do: odczytu, zapisu, wykonania. mozna wpisac do skryptu haslo i ustawic atrybut tylko do wykonania. teraz kazdy uzytkownik moze korzystac ze skryptu i nie poznac hasla. windows... jak to windows.. chyba nie musze tlumaczyc :)

// co ty chrzanisz, nie słyszałeś o ntfs??? dla jednego użytkownika ma więcej niż 3*rwx+3 pozostałe dla wszystkich w ext2 - Ł

0

Uoooo ale was tu dużo odpisało :)

Na prawdę wielkie dzięki... no to mam co czytać.....

0

looknij to: http://4programmers.net/file.php?id=1697 piszesz prostego interpretera i już masz możliwość pisania skryptów w języku Object Pascal (lub Pascal już nie pamiętam). O wiele lepsze niż Batch Files i łatwiejsze do zrozumienia :]

0

swojego czasu bawilem sie batchami i wiem ze jak sie tylko czlowiek postara to mozna wyskrobac cos dobrego :d a komendy choice i if errorlevel strasznie w tym pomagaly ;P

0

Należy tylko pamiętać że CHOICE nie działa pod Windows XP

//pod win2k też wywalili ten program [sciana] ale zawsze można go zgrać ze starszych wersji windows - M

0

Skrypty pod Windows (szczególnie 2k / XP) dają prawie identyczne możliwości do pod Linux'em.. Trzeba je tylko dobrze znać. Też mają polecenia IF, FOR, GOTO, SHIFT, przekierowania, potoki i podmianę deskrypotorów wejścia/wyjścia/błędu, zmienne lokalne, listy parametrów (np.: %1, w linux $1) itp... To są pliki (*.bat) [można tez nazwać je *.cmd]

PS. Jak ktoś ci mówi, że (*.bat) mają małe możliwości, to w to nie wierz.. Po prostu ich nie zna.

Prosty przykład: z pliku (ludzie.txt) wczytuje linie (jeden login w jednej linii), i dla każdego takiego wpisu tworzy użytkownika, przypisuje mu konto, katalog domowy i losowe hasło, które wycina ze strumienia wyjściowego polecenia i przekierowuje do pliku (hasla.txt)..

@ECHO OFF
DEL hasla.txt

FOR /F %%i IN (ludzie.txt) DO CALL :dodanie %%i
GOTO koniec

:dodanie

	MD "c:\HOME\%1"
	NET USER %1 /random /homedir:"c:\HOME\%1" /add | FIND ":" >> hasla.txt

:koniec
0

A ja mam takie pytanko... czy da sie odpalic takiego bata tak by nie pokazywalo sie okno konsoli? To mnie zawsze denerwowalo w ich wykonywaniu.

0

Możesz napisać program do ich odpalania, który przejmie wyjście z konsoli.

0
Szczawik napisał(a)

(...)PS. Jak ktoś ci mówi, że (*.bat) mają małe możliwości, to w to nie wierz.. Po prostu ich nie zna.(...)
Skoro tak dobrze znasz te skrypty, to powiedz mi jak prosto podstawić STDOUT jakiegoś programu pod zmienną :>

0
Szczawik napisał(a)

Skrypty pod Windows (szczególnie 2k / XP) dają prawie identyczne możliwości do pod Linux'em..

Taa.... jest tylko taki maluteńki, tyci tyci problem. Środowisko uniksowe udostępnia mnóstwo programów narzędziowych (poczynając od test, grep, diff, find, cut, wc, tr, sort, head, tail, awk, sed... aż trudno mi wypisać wszystkie z któych korzystałem), które w tych skryptach są wykorzystywane.
Same skrypty są w uniksach skromne (dlatego niekiedy perla lub pythona się do tego stosuje).

To jest po prostu inna kultura. W uniksach nastawienie jest na filtry, które w skryptach bardzo wygodnie się wykorzystuje. W windowsie nie ma takich tradycji, więc i skryptów nie pisze się tak wygodnie.

Jak coś, to nie czytałem całości. Po prostu ten post przykuł mój wzrok, więc może i OT jakieś robię.

0
Marooned napisał(a)

Możesz napisać program do ich odpalania, który przejmie wyjście z konsoli.

Jak juz mam sie bawic w pisanie programu to po co pisac skrypt :P

0

Co do programów narzędziowych to tak na prawdę nie jest kwestia składni skryptów, ale tego co producent dostarczył z systemem operacyjnym. Tu akurat Linux wygrywa, bo ma nie jednego, ale wielu producentów. W kategorii filtrów do potoków pozostają w Windows przede wszystkim sort, find, more.

A co do przekierowania wyjścia do zmiennej.. cóż, to akurat słynny problem skryptów Windowsa.. Niektórzy rozwiązują go trzema liniami: przekieruj wyjście programu do pliku, załaduj zmienną z pliku, skasuj plik. Nie jest to eleganckie rozwiązanie i w tym miejscu jestem zwolennikiem Linux'a, ale nie jest to nie możliwe w Windows. A może ktoś zna lepszy sposób?

Swoją drogą w Windows'ach serwerowych (np.: Windows 2003) jest troszkę większe bogactwo poleceń dla skryptów, więc może i to da się zrobić łatwiej.. Musiałbym usiąść i pogrzebać, a nie mam obecnie do takiego dostepu.

0

Nie rozumiem dlaczego porównujecie skrypty bat do skryptów w linuxie, skoro teraz używa się JScript i VBScript?

Dostępne są one od Win95 i cały czas sa rozwijane, bezsensu takie porównania w stylu, które lepszę środowisko LOGO Komeniusz czy Borland Delphi?

Microsoft po to je stworzył, aby ich używać, a to, że ktoś ich nie zna to już jego problem.

0

O ile VBScript oraz JScript jest rzeczywiście możliwościami nieporównywalnie bogatszy od Batch, to jednak Linux'owe skrypty odpowiadają właśnie plikom (*.bat).

Podobieństwa widać gołym okiem, poza tym (*.bat) są dedykowane na konsole, a nie na interfejs użytkownika, a więc jak stawia się Windows w wersji serwerowej to są jak znalazł :) Kwestia gustu - czy chce się z nich skorzystać.. Warto znać wszystkie :]

P.S. Takie pytanie: kto z Was stawiał komercyjnie serwer na Windows ? :)

0
Szczawik napisał(a)

P.S. Takie pytanie: kto z Was stawiał komercyjnie serwer na Windows ? :)

Off TOpic, nie znam takowego desperata, ale ktos podobno kiedys.. :)

0

Oto ja desperat stawiajacy komercyjnie serwery na platformie Windows...

//Szacunek, w imie podziwu moge ci wyslac w nagrode młynek do kawy :) - lofix

0
Szczawik napisał(a)

A co do przekierowania wyjścia do zmiennej.. cóż, to akurat słynny problem skryptów Windowsa.. Niektórzy rozwiązują go trzema liniami: przekieruj wyjście programu do pliku, załaduj zmienną z pliku, skasuj plik.

Ale jak załadować zmienną z pliku?
Proszę o odpowiedź bardzo mi jest potrzebna

0

Od ostatniego postu minęły 2 i pół roku.. czasy się zmieniły.
Teraz pod Windows polecam skryptu w PowerShellu.

0

O ja #%$#%#$ ja pamiętam jak pisałem mojego posta w tym wątku.... :|

//hmm.. co w związku z tym? gratulujemy dobrej pamięci ;] - M

0

choice działa pod windowsem ale trzeba napisać set /p choice

0

Wiesz... wykopywanie po dwoch latach tematu, wykopanego jeszcze dwa lata wczesniej to juz nie tylko nekrofilia... Zatem, jak programowanie [tudziez administrowanie] Ci nie wyjdzie, proponuje aplikowac o prace w kostnicy.

[browar]

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