Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- setlocal enableDelayedExpansion
- rem setze Fenstereigenschaften ---ich mag einen riesigen Zeilenbuffer
- call :set_ConsoleWindow 128 80 999 32000 Array_Demo
- :var
- set "search=c:/*.txt"
- set /a "file.arr.base=1"
- set /a "file.arr.count=%file.arr.base%"
- :main
- echo suche und zaehle Dateien
- for /f "delims=" %%a in ('dir /b /s "%search%" 2^>nul') do (
- set file.arr[!file.arr.count!]=%%a
- set /a "file.arr.count+=1"
- )
- echo %file.arr.count% Dateien gefunden.
- mshta "javascript: close((Test=(Voice=new ActiveXObject('SAPI.SpVoice')).GetVoices()).count&&Voice.Speak('Hallo! %file.arr.count% Files counted'))"
- echo speichere file.arr in der der Datei file.arr.txt
- rem ein array in eine datei speichernn ist simpler als in C++
- set file.arr > file.arr.txt
- echo da isses...
- start "" "file.arr.txt"
- pause
- rem array löschen
- echo Loesche array...
- mshta "javascript: close((Test=(Voice=new ActiveXObject('SAPI.SpVoice')).GetVoices()).count&&Voice.Speak('delete %file.arr.count% Arraycells'))"
- for /f "delims==" %%a in ('set file.arr 2^>nul') do (set "%%a=" )
- set file.arr
- echo alles weg?
- pause
- :read
- rem array aus Datei einlesen
- echo lese Array aus Datei...
- for /f "usebackq delims=" %%a in ("file.arr.txt") do ( set "%%a")
- set file.arr
- echo jetz sollte alles wieder da sein...
- pause
- rem array durchsuchen und in neuem array speichern
- set "searchText=%username%"
- echo durchsuche file.arr nach suchbegriff: %searchText%
- set /a "user.files.count=1"
- for /f "tokens=1-2* delims==" %%a in ('set file.arr[') do (
- rem mit "find" kann man keine strings mit Leerzeichen suchen, der replacemethothe ist es egal
- rem im dummy einfach den suchText löschen und dummy mit dem original vergleichen
- set "original=%%b"
- set "dummy=!original:%searchText%=!"
- if /i not .!dummy!==.!original! (
- rem es muss nicht immer eine eckige Klammer sein dem batcharray ist es egal...
- set "user.arr_!user.files.count!=!original!"
- set /a "user.files.count+=1"
- echo kopiere Inhalt !original!
- echo ...nach user.arr_!user.files.count! & echo.
- )
- )
- pause
- echo %user.files.count% Arrayelemente in das Array "user.arr_" kopiert...
- pause
- set user.arr_
- rem for /f "delims=" %%X in('echo %%b ^|find /i "%searchText%"') do ( echo %%X )
- pause
- :end_main
- exit/b
- :sub_routines
- :set_ConsoleWindow
- mode con: cols=%1 lines=%2
- powershell -command "&{$H=get-host;$W=$H.ui.rawui;$B=$W.buffersize;$B.width=%3;$B.height=%4;$W.buffersize=$B;$W.WindowTitle='%5'}" >nul 2>&1 || echo fehler
- exit /b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement