Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batchanpassung - andere Eingangsdatei

Mitglied: freshman2017

freshman2017 (Level 1) - Jetzt verbinden

19.08.2019 um 17:24 Uhr, 361 Aufrufe, 4 Kommentare

Hallo Ihr!

Was muss ich anpassen, damit die Eingangsdatei wie folgt aufgebaut sein kann?

01.
1500..2000,2500..4000
Skript:

01.
@echo off &setlocal EnableDelayedExpansion
02.
set "infile=test.txt"
03.
set "outfile=test2.txt"
04.
set "step=2000"
05.
set "txt=150"
06.

07.
for /f "usebackq tokens=1,2 delims=." %%i in ("%infile%") do set /a "begin=%%i, end=%%j"
08.
set "s=%txt%;%begin%.."
09.
set /a "n=begin, begin+=step"
10.

11.
for /l %%i in (%begin% %step% %end%) do (
12.
  set /a "d=%%i-n, n=%%i-1"
13.
  set "s=!s!!n!;!d!;%txt%;%%i.."
14.
  set /a "n=%%i"
15.
)
16.

17.
set /a "d=end-n+1"
18.
if %n%==%end% (set "s=%s:~,-2%;%d%;") else set "s=%s%%end%;%d%;"
19.

20.
>"%outfile%" echo %s%
Ausgangsdatei wäre wie folgt:

01.
150;1500..2000;501;150;2500..4000;1501;
Beste Grüße
Mitglied: 140777
20.08.2019, aktualisiert um 14:09 Uhr
Autoreifen? Birnen? Für eine für jeden verständliche Erklärung war wohl mal wieder keine Zeit?! "Mit Stahlkappen in die Kronjuwelen tret ..."
01.
@echo off &setlocal EnableDelayedExpansion
02.
set "infile=test.txt"
03.
set "outfile=test2.txt"
04.
set "step=2000"
05.
set "txt=150"
06.

07.
for /f "usebackq tokens=1,2 delims=," %%a in ("%infile%") DO (
08.
	call :process "%%a"
09.
	call :process "%%b"
10.
)
11.

12.
>"%outfile%" echo %final%
13.

14.
goto :eof
15.

16.
:process
17.

18.
for /f "tokens=1,2 delims=." %%i in ("%~1") do set /a "begin=%%i, end=%%j"
19.
	
20.
set "s=%txt%;%begin%.."
21.
set /a "n=begin, begin+=step"
22.

23.
for /l %%i in (%begin% %step% %end%) do (
24.
  set /a "d=%%i-n, n=%%i-1"
25.
  set "s=!s!!n!;!d!;%txt%;%%i.."
26.
  set /a "n=%%i"
27.
)
28.

29.
set /a "d=end-n+1"
30.
if %n%==%end% (set "s=%s:~,-2%;%d%;") else set "s=%s%%end%;%d%;"
31.
set "final=%final%%s%"
32.
exit /b
Bitte warten ..
Mitglied: Henere
20.08.2019 um 14:40 Uhr
Auf solche Fragen können nur gute Coder antworten, andere verstehen nicht mal die Eingangsfrage
Bitte warten ..
Mitglied: 140777
20.08.2019, aktualisiert um 15:09 Uhr
Jap, trotzdem sollte man sich die Mühe geben, er will ja Hilfe nicht wir. Wenn man sich immer erst alles selbst zusammenreimen muss nur weil der TO zu faul ist mal einen Satz mehr zu schreiben ...
Bitte warten ..
Mitglied: pieh-ejdsch
22.08.2019 um 00:08 Uhr
Moin,
Die scripte passen beide (auch vom TO) NICHT zum erwarteten Ergebnis.
Die Berechnung von n (i-1) und d (range+1 oder einen weiteren Rest) ist anfangs falsch.
Eine Beispiel Ausgabe in etwa so:
txt;begin..end; range+1;nextRange+1;txt;usw...
Ich hör mal auf zu spekulieren...

Phil
Bitte warten ..
Neue Wissensbeiträge
Voice over IP

Telekom Umstellung von ISDN Anlagenanschluss auf IP-Telefonie

Erfahrungsbericht von NixVerstehen vor 2 TagenVoice over IP6 Kommentare

Hallo zusammen, nachdem nun vor ein paar Tagen die zwangsweise Umstellung von ISDN auf IP-Telefonie problemlos über die Bühne ...

Apple

Apple Special Event vom 10.09.2019: Arcade, TV+, iPad und iPadOS, Watch und iPhone 11

Information von Trontur vor 3 TagenApple2 Kommentare

Hier könnt ihr euch die Keynote von Tim Cook auf dem Apple Special Event vom 10.09.2019 anschauen: September Event ...

LAN, WAN, Wireless

Das RIPE ist quasi endgültig leer was IPv4 angeht

Information von LordGurke vor 11 TagenLAN, WAN, Wireless8 Kommentare

Das RIPE teilt mit, dass sie erwarten, Ende des Jahres keine /22-IPv4-Allocations (1.024 Adressen) mehr vergeben zu können. Dann ...

Verschlüsselung & Zertifikate

Ein besserer Weg zur Delegation of Control für Bitlocker Recoverykeys

Anleitung von DerWoWusste vor 11 TagenVerschlüsselung & Zertifikate

Will man Supportmitarbeitern ermöglichen, Bitlocker-Recoverykeys auszulesen, dann bietet sich eigentlich der Delegation of Control Wizard an. Ich zeige zunächst ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2013 nach Umzug nicht erreichbar
gelöst Frage von dbox3Exchange Server17 Kommentare

Hallo, die Lösung für mein Problem mag einfach sein. Nur stehe ich irgendwie auf dem Schlauch. ich habe einen ...

Hyper-V
Umzug Hyper-V mit VM in anderen Netzwerkabschnitt
gelöst Frage von keine-ahnungHyper-V9 Kommentare

Moin at all, ich habe leider den Freitag verpennt - daher meine obligate Freitagsfrage erst jetzt Ich habe einen ...

Windows 10
Windows 10 ( upgrade per media creator von win7 ) hat keine Systemwiederherstellung
gelöst Frage von knirschkeWindows 108 Kommentare

Hallo ! Habe letztlich mein Win7 auf Win10 aufgepeppt per Media Creator. Ging - obzwar recht spät - ganz ...

Windows Server
Drucker auf dem Terminalserver 2016 via Printserver wird nicht angezeigt
Frage von EchterHansenWindows Server7 Kommentare

Moin Moin, ich habe hier zwei 2016er Terminalserver und einen 2016er Printserver, auf dem ca. 10 RICOH-Drucker Typ 4. ...