Új hozzászólás Aktív témák
-
sentinel
aktív tag
Hello Lortech
Igen, valóban ez a megoldás kipróbáltam
A SET /A var %%= 3 az azt jelenti jelen esetben, hogy 10/3 és megadja ez a maradékot, jelen eseben 1-et ugye?
Ha igen, akkor abban még tudsz segíteni ilyeneknek hol néztél utána? Gondolom van hatványozás stb, de egyszerűen nem tudom hogy keressek rá a google-on, mert az nem értelmez ilyen %% jeleket, stb.
Köszi!
[ Szerkesztve ]
-
Lortech
addikt
válasz sentinel #152 üzenetére
Igen, a moduló operátor a %.
Ez konkrétan fejből jött, mert elég sok ilyen hulladékot kellett már írnom.Ez elég jó oldal: [link], no meg az msdn.
Google-lel ezt is meg lehet találni megfelelő kereséssel, és más helyzetben is azt ajánlom, arra keress rá, amit szeretnél megoldani pl. ezek:
[link]
[link]
- releváns találatokat adnak.[ Szerkesztve ]
Thank you to god for making me an atheist
-
DarkFater
tag
Sziasztok!
Nekem is kellene egy kis segítség.
20 éve tanultam programozni, de ez már nagyon nagyon megkopott.
Egyszerűbb dolgokat általában megoldok, de időnként sajnos leakadok piti dolgokon.A probléma:
- Indításkor futtatok egy batch fájlt. C:\ install könyvtárból- meghívok egy EXE fájlt az E: meghajtó "DB" könyvtárából ahol annak el kell végeznie egy adatbázis műveletet.
- Sajnos azt az EXE progit nem én írtam, gyári és egy baja van: Csak akkor működik ha abban az adott AKTÍV könyvtárban van bemásolva és indítva ahol az adatbázis állományok vannak. Ha máshonnan indítom akkor nem találja az adatfájlokat és hibaüzenettel leáll.
Értsd: ha megnyitom az explorert és rákattintok, akkor lefut, de én nem akarok explorert nyitogatni és kattintgatni.
- Ez a probléma élő sajnos a batchből történő indítással is. Hiába van az E meghajtó megfelelő könyvtárába bemásolva az EXE és hiába hivatkozok rá a batch-ben megfelelően. Elindulni elindul az EXE, de sajnos az aktív könyvtár az továbbra is a C:\ install mivel a batch onnan fut. Ez a hülye EXE a jelek szerint viszont azt igényli, hogy az E:\db legyen az aktív könyvtár.
- próbáltam CALL-al meghívni egy másik batch-et, amit odaraktam az E:\-re, hátha átáll az aktív meghajtó arra, de nem.
- próbáltam a batch-en belül átállítani az aktív meghajtót de nem sikerült.
Kérdés: Hogyan tudom átállítani az aktív meghajtót és könyvtárat?
A segítséget előre is köszönöm.
Addig röhögtünk azon amit a főnök mondott, amíg rá nem jöttünk, hogy ez a mai feladat...
-
DarkFater
tag
válasz DarkFater #160 üzenetére
visszaolvasva kicsit a dolgokat....
Látom, hogy Second kollégának is volt valami hasonló problémája, amire Sonar azt a javaslatot adta, hogy a START parancs /D kapcsolóját alkalmazza.
Sajnos esetemben ez nem megvalósítható, mivel a valós könyvtárnév nem E:\DB hanem hosszabb csak rövidítettem a kérdésfeltevésnél.
Sajnos az elérési útban van space is, így a START parancs ezt nem tudja kezelni, pedig próbáltam idézőjelbe rakni is. (8.3-at tud csak)Hasonlóképpen próbálkoztam a PATH paranccsal is de nem ment.
Próbaképpen felvettem a %PATH% változói közé az elérési utat, de az sem segített.Valaki, ötlet?
Addig röhögtünk azon amit a főnök mondott, amíg rá nem jöttünk, hogy ez a mai feladat...
-
PazsitZ
addikt
válasz DarkFater #161 üzenetére
Abban az esetben ha hosszabb, a rövidített nevet kell használni:
A könyvtárnévből 6 betű és utána egy ~1
(Ha az első hat betű alapján van hasonló azokat ezanev~1, ezanev~2-vel azonosítja.)
Nekem pl így indul az amsn-em: start c:\progra~1\aMsn\amsn.exe /belownormalÍgy lehet segít a könyvtármizériádon a start parancs.
[ Szerkesztve ]
- http://pazsitz.hu -
-
DarkFater
tag
válasz DarkFater #163 üzenetére
Heuréka...
A pushd - popd páros működik és megoldja a problémát.
Próbáltam már ezt a megoldást is, de nem ment.
Kínomban most mégegyszer kipróbáltam és működik.
Visszanézve rájöttem, hogy elsőre rosszul írtam be a pathname-t.A Pushd Gyönyörűen átírja a munkakönyvtárat amire kell, utána a popd-vel meg visszakapom az eredetit.
Probléma megoldva.
Addig röhögtünk azon amit a főnök mondott, amíg rá nem jöttünk, hogy ez a mai feladat...
-
DarkFater
tag
válasz DarkFater #164 üzenetére
A segítő, inspiráló hozzászólásokat köszönöm mindenkinek!
A régi DOS-os editorra vonatkozó megjegyzést külön köszönöm.
Nekem is voltak problémáim magyar nyelvű XP-ben könyvtármozgatásokkal és tudtam, hogy codepage probléma van, de hiába mentettem ANSI-ban nem oldotta meg.Azt hittem a notepad++ intelligensebb, de nem.
Aztán valaki mondta itt a fórumban, hogy hiába van ANSI-ban a mentés mert a cmd-ben akkor is elkutyulódik a codepage. És tényleg.....
Eddig nem érdekelt a dolog, inkább kihagytam az ékezetes karaktereket a dologból, de most próbaképpen elővettema régi DOSEDIT-et és azzal átírtam az egyik batch fájlomban a magyar ékezets részt.
Tényleg működik.
Ami a legfontosabb.
Utána próbaképpen visszatértem a "szuper-hiper grafikus felületű" notepad-hoz és megmaradt minden amit a DOSEDIT-tel átírtam. Igaz az ékezetes karakterek helyett itt most krikszkrakszot látok, de ez így van jól.Tehát ha ahhoz a részhez nem nyúlsz, amit a dosos editorral átírtál akkor a többi részt szabadon változtatva, mentve az ékezetes rész megmarad jónak.
Így kombinálva a régit és az újat egész jópofa dolgokat lehet kisütni.
Bár jobb lenne ha nem kellene ennyit szarakodni a dolgokkal.
Ez a milyen kódolást használok ez 20 éve is gond volt és a jelek szerint még ma sem tökéletesen megoldott.
A helyzet viszont tényleg jobb. Anno emlékeim szerint a chcp parancs használata mindennapos rutinfeladat volt.Addig röhögtünk azon amit a főnök mondott, amíg rá nem jöttünk, hogy ez a mai feladat...
-
Csontikka
aktív tag
Sziasztok,
a következő lenne a feladat:
Törölni az összes Felhasználó alatti Temp és Temporary internet files mappákat
először is kiíratom 1 file ba a usereket:
dir "c:\documents and settings" /b /a:d >user.txt
és legyen egy torles.bat:
deltree "c:\documents and settings\%1\Local Settings\Temp"
szóval a kérdés, hogy oldható meg, hogy végigolvassa soronként a user.txt-t a script és utána meghívja a torles.bat -ot, %1 paraméterben mindig átadva az aktuális sort?
Előre is köszi a segítséget!
Üdv,
Csontikka -
Csontikka
aktív tag
válasz Csontikka #166 üzenetére
Közben megírtam, de ha van ötlet a finomításra szívesen fogadom!
dir "c:\documents and settings" /b /a:d >a.txt
for /F "eol=; tokens=*" %%i IN (a.txt) DO rd /s /q "c:\Documents and Settings\%%i\Local Settings\Temp"
for /F "eol=; tokens=*" %%i IN (a.txt) DO md "c:\Documents and Settings\%%i\Local Settings\Temp"
for /F "eol=; tokens=*" %%i IN (a.txt) DO rd /s /q "c:\Documents and Settings\%%i\Local Settings\Temporary Internet Files"
for /F "eol=; tokens=*" %%i IN (a.txt) DO md "c:\Documents and Settings\%%i\Local Settings\Temporary Internet Files" -
Baryka007
őstag
sziasztok valaki megtudja mondani hogy ha routeren keresztül tehát lannal betudok e lépni a másik szgépembe?
net view ugye megnézem ip jét 2 es ip-n van tehát 192.168.0.2 az ip je amibe bezseretnék lépni de nemtudom hogyan lehetséges valaki ha tudna segíteni értékelném előre is köszönöm
-
Baryka007
őstag
sziasztok még 1 kérdés
:start
set /p var=var erteke:
goto %var%
:001
echo 001 jovalasztas
:002
echo 002 jo valasztashogy lehet azt megoldani hogyha var erteke nem 001 vagy 002[label] vagy meg lehet lessz tobb is akkor fusson le ez: "goto start"
-
DarkFater
tag
válasz Csontikka #167 üzenetére
Szia Csontikka!
Nem tudom segít-e.....
Én akkor kerültem ezzel a kérdéssel szembe amikor windows telepítő CD-t csináltam Nlite-al meg Batch scripttel és a teljes telepítési folyamat végén ki akartam pucolni az összes temp dirt.
(C:\temp, C:\windows\temp és a user profile tempek)Nem variáltam nagyon a dolgokkal mint te és szimplán a következőt utasításokat használtam:
ECHO Deleting Temporary Installation Files...
DEL %systemdrive%\Temp\*.*
DEL %systemroot%\Temp\*.*
DEL %USERPROFILE%\Local Settings\Temp\*.*
DEL %USERPROFILE%\Local Settings\Temporary Internet Files\*.*
ECHO DoneSajnos a %USERPROFILE% nekem csak az ALL USER profile-ból törölt, sima felhasználóm nem volt, arról nem tudok nyilatkozni, de a rendszergazda könyvtárait biztosan békénhagyta. Erre beraktam még egy sort a batchbe.
DEL /S /Q "%systemdrive%\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\*.*"
Érdekes módon a /s /q switch itt semmit nem ér nálam, igaz rákérdezni nem kérdez rá semmire, de minden egyes fájltörlést megjelenít "elérési út, fájlnév, törölve" módon.
Sok fájlnál ez elég zavaró. Előtte más másolás és törlés műveleteknél nem csinált ilyet. Pl. csak ilyen összefoglaló sorokat kaptam, hogy "63 fájl másolva vagy 5 könyvtár törölve"üdv:
FaterAddig röhögtünk azon amit a főnök mondott, amíg rá nem jöttünk, hogy ez a mai feladat...
-
Baryka007
őstag
válasz Baryka007 #173 üzenetére
:start
set /p var=var erteke:
goto %var%
:001
echo 001 jovalasztas
:002
echo 002 jo valasztas
hogy lehet azt megoldani hogyha var erteke nem 001 vagy 002[label] vagy meg lehet lessz tobb is akkor fusson le ez: "goto start"még mindig fenáll a kérdésem és nagyon várom rá a választ !!!
akk elmondom érthetőbben ha 001 et beírom aztírja ki a program hogy jovalasztas ha 002 akkoris aztírja ki hogy jóválasztás deha 003 at írok bele kilép a program aztkéne megoldani hogy fusson le az echo rossz valasztas ha 003 at vagy többet írok bele...?!?!?!?!
[ Szerkesztve ]
-
Lortech
addikt
-
EmberXY
addikt
Sziasztok!
azt szeretném kérdezni, hogy azt hogyan lehet megoldani, vagy meg lehet-e egyáltalán, hogy batch fájllal úgy tudjak könyvtárat vagy fájlt létrehozni, hogy a parancssorban a batch fájl neve után beírom a létrehozni kívánt könyvtár vagy fájl nevét, eseltleg helyét is, és létrehozza.
Olyan szisztéma szerint, mint például a szöveg kiiratás, ott %1, %2, stb kell használni, könyvtár, vagy fájl létrehozáshoz létezik-e ilyen szintaktika?
A válaszokat előre is köszönöm.Up the Irons!
-
EmberXY
addikt
válasz Csontikka #180 üzenetére
igen, valami ilyesmire, olyan dolgot szeretnék gyakorlásképpen, hogy egy sajátos "commander"-t csinálok, amiben saját parancsok alapján hajtódnak végre a műveletek, egész szépen halad a "fejlesztés " csak valahogy ezzel a résszel sehogy sem tudtam haladni, mert egyszerűen nem passzolt sehogy sem.
Bár elég hülye ötlet, de ha az embernek van szabadideje, akkor minden hülyeségre képes....
tehát lényegében hasonlóra gondoltam, de úgy szeretném megoldani, hogy egy "label"-en belül hajtódna ez végre, speciel valami ilyesmi, hogy ha megadom az adott parancsot, és mögé írom a szükséges könyvtár , esetleg fájl nevét, helyét, akkor végrehajtja azt a bizonyos "goto xyakármi", és a :xyakármi label tartalmazná azt, hogy hozza létre a kívánt objektumot...Egyébként köszönöm a segítséget, ha esetleg nem érthetően magyaráztam (van rá esély ), akkor ha gondolod, elküldhetem esetleg e-mail-ben ami eddig kész van belőle, a kódot nem szívesen írnám be, nem akarom, hogy kiröhögjenek. .....
Up the Irons!
-
sonar
addikt
Sziasztok,
Hogyan tudnám azt megoldani, hogy van egy könyvtáram és egy rakat fájlom és ami 4-5 nappal régebbi azt töröljem?
Hogyan tudom megállapitani egy file dátumát?
Vagy próbálkozzak inkább vbs- vel?A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
ArchElf
addikt
VBS jóval egyszerűbb volna, mint a sima batch.
Set objArgs = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
Set fslog = fso.OpenTextFile("c:\dellog.txt", 8, True, -1)
'4 nappal korábbi dátum
DelDate = DateAdd("m", -4, Date)
For Each fF In objArgs
On Error Goto eh:
Set Folder = fso.GetFolder(fF)
Set fFiles = folder.Files
For Each file In fFiles
If (file.DateLastModified < DelDate) Then
file.Delete(True)
fslog.WriteLine "Törölve: "& file.Path
End If
Next
Goto ehe:
eh:
fslog.WriteLine "Hibás könyvtárnév: " & fF
ehe:
Next
fslog.CloseRemélem nincs benne hiba...
AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
Volt benne pár hiba...
Set objArgs = WScript.Arguments
Set fso = CreateObject("Scripting.FileSystemObject")
Set fslog = fso.OpenTextFile("c:\temp\dellog.txt", 8, True, -1)
'4 nappal korábbi dátum
DelDate = DateAdd("d", -4, Date)
For Each fF In objArgs
On Error Resume Next
Set Folder = fso.GetFolder(fF)
If (Err.Number > 0) Then
fslog.WriteLine Date & " " & Time & " Hibás könyvtárnév: " & fF
Err.Clear
End If
Set fFiles = folder.Files
For Each file In fFiles
If (file.DateLastModified < DelDate) Then
fslog.WriteLine Date & " " & Time & " Törlés: " & file.Path
file.Delete(True)
End If
Next
Next
fslog.CloseAE
mod: ráadásul 4 hónap volt, nem négy nap, ja és a kiiratás is a tényleges törlés elött legyen... no meg egy kis formázási gond is volt vele.
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
ArchElf
addikt
Microsoft Windows Script Technologies: MSDN link
Szerkesztésre viszonylag egyszerű eszköz a VBSEdit. Fizetős, de szerkesztésre jó. Az Eval mód mondjuk borzasztó irritáló.AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
n00n
őstag
Egy egyszerű batch scriptet szeretnék írni, de sajna egyáltalán nem ismerem a nyelvet. :S
Annyi lenne a feladat, hogy egy fájlt átmásol A helyről B-be.
copy c:\A e:\B
Eddig meg is vagyok, de ezt szeretném elegánsabbá tenni. Lehet valahogy nyomon követni hol tart a másolás? illetve jelezni ha befejezte?
-
sonar
addikt
Hogyan tudnák megbizonyosdni róla, hogy létezik-e egy hálózati meghajtó?
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
-
-
sonar
addikt
Nincs betüjel. Akkor lehet nem jól fogalmaztam
net use \\ ip.cim \user jelszó
vigan müxik, de nincsen hozzá betűjel, de explorer ablakban is tudok benne tallózni, TC-ben meg becsapom egy tabra és használom. VB-ből, excelből is simán tudok így hivatkozni a file-okra.
Azért nincsen betűjele mert elfogyott a 26 karakter
Vagy 4-5 szerver csomó megosztása van már mappelve és bizonyos progikba sajnos vasalva van, hogy milyen betüjű meghajtónak léteznie kell[ Szerkesztve ]
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
timrob
csendes tag
Sziasztok
olyan kérdésem lenne, hogy batch fájlban lehet-e olyat írni, hogy amit elindítok, azt tegye be az indítópultba, hogy a következő indításnál is futtassa a fájlt?
-
chair.94
csendes tag
Üdv. Bocsi ha már van erről szó, de nem tudok ennyi üzenetet végígolvasni...
ez lenne a problémám:
egy egyszerű névjegyzéket kéne megcsinálnom, egy két kiegészítő cuccal
a feladat az hogy így látszódjon.
név:
cím:és ha ezt a kettőt beírta az illető MENTSE EL!
csak a mentést nem tudom hogy kell!!
pls help!
chair.94@hotmail.com
Új hozzászólás Aktív témák
- Gigabyte Z390 UD V2 - minden tartozékával - eladó!
- HP Victus 2026.08.hó-ig Garis Game Laptop
- Samsung Galaxy A52S 5G
- ÁRESŐ! Dobozos új Lenovo Ideapad Gaming 3/AMD Ryzen 5-5600H/16GB/512SSD/RTX 3060 6GB/Gari/
- Remek áron eladó dobozos új ACER NITRO 5 /RYZEN 7-6800H/16GB 512SSD NVIDIA RTX 3060 6 GB 144Hz 17"
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest