Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Leerzeilen aus .txt entfernen

Frage Entwicklung Batch & Shell

Mitglied: m-ziemann

m-ziemann (Level 1) - Jetzt verbinden

06.04.2009, aktualisiert 14:00 Uhr, 4860 Aufrufe, 7 Kommentare

Hallo,

ich habe ein Problem mit dem Befehlt "ipconfig" . Ich will den mit ein paar anderen Infos zusammen in ne .txt bringen und danach für die Unterlagen ausdrucken.
Nur gehen mir die Leerzeilen dabei ziemlich gegen den Strich.

Das Ganze sieht ungefähr so aus.

@echo off
echo. | date | find "Aktuell" >>system.txt
echo. | time | find "Aktuell" >>system.txt
graftabl 1252
(systeminfo & ipconfig /all & reg query "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices")>>system.txt
findstr ^.$ system.txt >system2.txt
start /w notepad /p system2.txt
del system.txt
del system2.txt


Andere Leerzeilen lassen sich problemlos entfernen, nur halt die von der ausgabe von ipconfig nicht .

Kann mir da wer helfen ?
Mitglied: bastla
06.04.2009 um 16:53 Uhr
Hallo m-ziemann und willkommen im Forum!

Eigentlich sollte doch
findstr . system.txt>system2.txt
genügen, um die Leerzeilen los zu werden ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
06.04.2009 um 22:11 Uhr
Moin m-ziemann,

nur als Variation, nicht als Alternative zu bastlas Lösung...

An Deiner Lösung empfinde ich aus meiner Erfahrung 2 Details Deines Schnipsels langfristig etwas wartungsunfreundlich bzw von unzureichender spielerischer Leichtigkeit:
  • diese Rumeierei mit zwei Temp-Dateien für eine Outputdatei von ~300 Zeilen... und das in Zeiten der knappen Ressourcen..
  • dieser Schlenker über das unsägliche NotePöd, mit dem sich zwar per Parameter /p drucken lässt, aber nur auf den Standarddrucker

Ohne Not-Päd und mit einer Temp-Datei und auf beliebigen Drucker ohne neues Fenster:
01.
@echo off & setlocal 
02.
Set "outfile=%temp%\sysinfo.txt" 
03.
set Regkey="HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices" 
04.
:: ggf CHCP xxxx 
05.
>%outfile% ( 
06.
(echo.|date  & echo.|time)|find "Aktuell" 
07.
(systeminfo & ipconfig /all & reg query %regkey%)|findstr .) 
08.
09.
 
10.
Print /d:\\SusisServer\LarasLaser %outfile% 
11.
:: ggf CHCP retour 
12.
del %outfile%
[Okay, da wo jetzt Zeilen eingespart wurden, da könnten statt dessen Kommentarzeilen rein...]

Grüße
Biber
Bitte warten ..
Mitglied: m-ziemann
07.04.2009 um 07:53 Uhr
Morgen und vielen Dank für die Antworten.

"findstr . " funkioniert leider auch nicht.

schreibt mal den Befehl ipconfig in ne .txt und macht auf der Shell ein edit auf das File. Die Steuerzeichen bleiben drine.

Biber: Guter Ansatz mit dem festen Drucker, nur ist es eigentlich gewollt, dass auf dem Standartdrucker ausgegeben wird. Ich bin hier für das Schulamt in allen Schulen meiner Stadt unterwegs an fast 100 Standorten.
Das Script soll dort halt von nem USB-Stick als Momentaufnahme für die Unterlagen ausgeführt werden wenn ich mich an einen PC setze.

Grüße Marcel
Bitte warten ..
Mitglied: bastla
07.04.2009 um 10:46 Uhr
Hallo m-ziemann!

Stimmt - das überzählige CR bleibt in der Datei und wirkt sich leider beim Ausdruck aus ...

Mit einem zusätzlichen temporären VBScript (verlängert allerdings den Batch um ein Drittel ) sollte sich das aber beheben lassen - als Ergänzung zu Bibers Vorschlag:
01.
@echo off & setlocal 
02.
Set "outfile=%temp%\sysinfo.txt" 
03.
set R=%temp%\RemoveDoubleCR.vbs 
04.
>%R%  echo D=WScript.Arguments(0):Set f=CreateObject("Scripting.FileSystemObject") 
05.
>>%R% echo T=f.OpenTextFile(D).ReadAll:f.CreateTextFile(D,True).Write Replace(T,vbCr^&vbCr,vbCr) 
06.
 
07.
set Regkey="HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices" 
08.
:: ggf CHCP xxxx 
09.
>%outfile% ( 
10.
(echo.|date  & echo.|time)|find "Aktuell" 
11.
(systeminfo & ipconfig /all & reg query %regkey%)|findstr .) 
12.
13.
cscript //nologo %R% %outfile% 
14.
start /w notepad /p %outfile% 
15.
:: ggf CHCP retour 
16.
del %outfile% & del %R%
Schön finde ich die Lösung zwar auch nicht, aber funktionieren sollte es so ...

Grüße
bastla
Bitte warten ..
Mitglied: m-ziemann
07.04.2009 um 12:21 Uhr
Danke für diese Lösung, funkioniert 1a


Kleine Frage hätte ich noch abweichend vom Thema: Kann ich mitgeben in welcher Schriftgröße ausgegeben wird?


Grüße Marcel
Bitte warten ..
Mitglied: bastla
07.04.2009 um 13:05 Uhr
Hallo m-ziemann!
Kann ich mitgeben in welcher Schriftgröße ausgegeben wird?
Etwas Seriöses fällt mir dazu nicht ein, aber Du kannst es (ist auch schon egal ) mit der folgenden "SendKeys"-Bastelei versuchen:
01.
@echo off & setlocal 
02.
set "outfile=%temp%\sysinfo.txt" 
03.
set Schriftgr=8 
04.
 
05.
set R=%temp%\RemoveDoubleCR.vbs 
06.
>%R%  echo D=WScript.Arguments(0):Set f=CreateObject("Scripting.FileSystemObject") 
07.
>>%R% echo T=f.OpenTextFile(D).ReadAll:f.CreateTextFile(D,True).Write Replace(T,vbCr^&vbCr,vbCr) 
08.
 
09.
set C=%temp%\ControlNotepad.vbs 
10.
>%C%  echo Set WshShell=WScript.CreateObject("WScript.Shell") 
11.
>>%C% echo WshShell.Run "notepad "^&WScript.Arguments(0):WScript.Sleep 100 
12.
>>%C% echo WshShell.AppActivate "sysinfo.txt - Editor":WScript.Sleep 100 
13.
>>%C% echo WshShell.SendKeys "^a":WScript.Sleep 500 
14.
>>%C% echo WshShell.SendKeys "%%os{TAB}{TAB}%Schriftgr%{ENTER}":WScript.Sleep 500 
15.
>>%C% echo WshShell.SendKeys "^p%%d":WScript.Sleep 2000 
16.
>>%C% echo WshShell.AppActivate "sysinfo.txt - Editor":WshShell.SendKeys "%%{F4}" 
17.
 
18.
set Regkey="HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices" 
19.
:: ggf CHCP xxxx 
20.
>%outfile% ( 
21.
(echo.|date  & echo.|time)|find "Aktuell" 
22.
(systeminfo & ipconfig /all & reg query %regkey%)|findstr .) 
23.
24.
cscript //nologo %R% %outfile% 
25.
cscript //nologo %C% %outfile% 
26.
:: ggf CHCP retour 
27.
del %outfile% & del %R% & del %C%
Die Bedeutung der einzelnen simulierten Tastenbefehle -
WshShell.SendKeys "^a"
markiert zB den gesamten Text (durch Strg-a) - kannst Du hier nachlesen. Um das Prozentzeichen (als Symbol für "Alt") zu erzeugen, musst Du es im Batch verdoppeln (siehe zB Zeile 14).

Für die Pausen (zB WScript.Sleep 100) sind die Zeiten in Millisekunden angegeben und ggf etwas (nach oben) anzupassen ...

Grüße
bastla
Bitte warten ..
Mitglied: m-ziemann
07.04.2009 um 14:30 Uhr
Habe gerade nochmal was geschaut.

Finde folgenden Möglichkeit auch nicht schlecht, da die Lehrer eh nie so nen Notepad aufmachen werden. ( Lieben ja alle ihr Office )

REG ADD HKEY_CURRENT_USER\Software\Microsoft\Notepad /v iPointSize /t REG_DWORD /d 86 /f

Grüße Marcel
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Outlook & Mail
Outlook 2016 - Entfernen des Löschbuttons in Nachrichtenzeile (1)

Frage von ArnoNymous zum Thema Outlook & Mail ...

Windows 7
gelöst Windows Explorer, wie untere Infoleiste entfernen? (2)

Frage von Server4Alle zum Thema Windows 7 ...

Outlook & Mail
Exchange Konten Sauber aus Outlook entfernen (6)

Frage von MultiStorm zum Thema Outlook & Mail ...

Windows Server
gelöst WSUS - Nicht benötigte Updates entfernen (11)

Frage von leon123 zum Thema Windows Server ...

Heiß diskutierte Inhalte
DSL, VDSL
gelöst DSL 200m verlängern (16)

Frage von Angela44 zum Thema DSL, VDSL ...

Windows Server
SBS 2011 Standard virtualisieren (12)

Frage von HeinrichM zum Thema Windows Server ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Backup
Datensicherung ARCHIV (11)

Frage von fautec56 zum Thema Backup ...