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

Textdatei ohne abschließenden Zeilenumbruch erstellen

Frage Entwicklung Batch & Shell

Mitglied: IstdaseinProblem

IstdaseinProblem (Level 1) - Jetzt verbinden

26.04.2007, aktualisiert 18.10.2012, 10524 Aufrufe, 12 Kommentare, 1 Danke

Ich möchte aus einer Batchdatei heraus eine Textdatei mit dem Windows Loginnamen erstellen, z.B. mit echo %username%>datei.txt.
Das Problem ist, dass die Textdatei dann immer mit einem Zeilenumbruch endet.
Die Textdatei wird anschließend von einer Software ausgelesen, ein Zeilenumbruch darin ist nicht zulässig.
Gibt es eine Möglichkeit, den Zeilenumbruch zu verhindern (nur per Batch)?

Danke für die Hilfe.
Mitglied: bastla
26.04.2007, aktualisiert 18.10.2012
Hallo IstdaseinProblem und willkommen im Forum!

Gibt es eine Möglichkeit, den Zeilenumbruch zu verhindern (nur per Batch)?
Ich fürchte, es hat sich seither nichts geändert ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
26.04.2007 um 07:37 Uhr
... soferne VBS eine Option wäre, sollte die folgende Batchdatei genügen:
01.
@echo off & setlocal 
02.
set "Ausgabedatei=D:\Test.txt" 
03.
set "VBSTemp=%temp%\GetUserName.vbs" 
04.
echo Set fsotxt = CreateObject("Scripting.FileSystemObject").OpenTextFile("%Ausgabedatei%", 2, 1)>"%VBSTemp%" 
05.
echo fsotxt.Write WScript.CreateObject("WScript.Network").UserName>>"%VBSTemp%" 
06.
echo fsotxt.Close>>"%VBSTemp%" 
07.
cscript //nologo "%VBSTemp%" 
08.
del "%VBSTemp%"
Anmerkung: Die Batchdatei erstellt (und löscht wieder) eine temporäre VBS-Datei, welche das Auslesen und Schreiben des "Username" durchführt. Zu ändern wäre nur der Name/Pfad der Ausgabedatei.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
26.04.2007 um 08:33 Uhr
Moin IstdaseinProblem,

willkommen im Forum.

Du kommst gerade richtig, gerade letzte Woche habe ich ein undokumentiertes Feature für ein "ECHO ohne Zeilenumbruch" gefunden.
Syntax-Demo:
01.
>echo.|set /p=xxx>ohneCRLF.txt 
02.
 
03.
(= 8:31:36  D:\temp=) 
04.
>echo.|set /p=>>ohneCRLF.txt 
05.
 
06.
(= 8:31:49  D:\temp=) 
07.
>echo.|set /p=zzz>>ohneCRLF.txt 
08.
 
09.
(= 8:32:02  D:\temp=) 
10.
>type ohneCRLF.txt 
11.
xxx  zzz 
12.
(= 8:32:05  D:\temp=)
Im Batch:
01.
echo.|set /p=%username%>datei.txt
Gruss
Biber
Bitte warten ..
Mitglied: miniversum
26.04.2007 um 09:17 Uhr
Das ist ja mal geil
Wenn du mir jetzt noch zeigst wie man die Leerstelle am Ende wegbekommt wärs ja past perfekt :D

miniversum
Bitte warten ..
Mitglied: Biber
26.04.2007 um 12:01 Uhr
Na gerne, miniversum,

dazu muss ich noch einen kleinen Umweg machen.
01.
::---snipp NoLFEcho,bat 
02.
@echo off & setlocal 
03.
Set Ret=%temp%\ret 
04.
echo.>%ret% 
05.
set/p=Mit freundlichen Grüßen Biber, <%ret%>NoCRLF.txt 
06.
set/p=der ohne Leerzeichen und Zeilenumbruch in eine Text<%ret%>>NoCRLF.txt 
07.
REM Hier könnten jetzt 48 Batchzeilen mit Programmlogik folgen... 
08.
REM ...mach mir die Datensicherung z.B... 
09.
REM ...und  irgendwann später kann ich in derselben Textzeile weiterschreiben.. 
10.
REM Wäre ein nettes Feature in einer Logdatei mit "Start Backup 11:44 Ende 12:37"  
11.
REM ..hoffe, es ist verständlich... 
12.
set/p=datei schreiben kann<%ret%>>NoCRLF.txt 
13.
 
14.
set /p test=<NoCRLF.txt 
15.
echo [%test%] 
16.
Del %ret% 
17.
::Snapp NoLFEcho.bat
Output ist:
[Mit freundlichen Grüßen Biber, der ohne Leerzeichen und Zeilenumbruch in eine Textdatei schreiben kann]

Grüsse
Biber
Bitte warten ..
Mitglied: miniversum
26.04.2007 um 20:02 Uhr
Ist so ungewohnt von dir so lange Sachen zu lesen
@echo off
echo.>%temp%\tmp
set/p=Mit freundlichen Grüßen miniversum <%temp%\tmp>>NoCRLF.txt
del %temp%\tmp

miniversum
Bitte warten ..
Mitglied: bastla
26.04.2007 um 20:23 Uhr
... wobei nach meiner Überschlagsrechnung Biber mit seiner Variante schon ab dem zweiten "Nicht-Zeilenumbruch" insgesamt weniger (wenn auch recyclebare ) Bytes benötigt ...

Grüße
bastla
Bitte warten ..
Mitglied: IstdaseinProblem
26.04.2007 um 20:44 Uhr
Hallo Biber und andere,

vielen Dank für die Antworten, hat mir sehr weitergeholfen.

Gruß,

IstdochkeinProblem
Bitte warten ..
Mitglied: Biber
26.04.2007 um 22:22 Uhr
@miniversum
Ist so ungewohnt von dir so lange Sachen zu lesen
Och, ich kann mich auch kürzer fassen:
01.
::---snipp MoreNoLFEcho.bat 
02.
@(echo.>%temp%\ret && For /L %%i in (1,1,200) do @set/p=Mit freundlichen Grüßen Biber ~~~<%temp%\ret>>con) & del %temp%\ret
@IstdochkeinProblem
Setzt Du dann bitte den Beitrag auf "gelöst", wenn er das für Dich ist?

Danke
Biber
Bitte warten ..
Mitglied: Ren
21.11.2008 um 15:44 Uhr
Wie wäre es mit:
01.
set /p =wer schafft es noch kleiner<nul>datei.txt
Gruß Ren
Bitte warten ..
Mitglied: Biber
21.11.2008 um 16:47 Uhr
Moin Ren,

danke für Deine Variante.
01.
(=16:45:41  E:\Schnipsel\RenBsp=) 
02.
>for /L %i in (1,1,4) do @set /p =wer schafft es noch kleiner<nul 
03.
wer schafft es noch kleinerwer schafft es noch kleinerwer schafft es noch kleinerwer schafft es noch kleiner 
04.
(=16:45:45  E:\Schnipsel\RenBsp=) 
05.
>for /L %i in (1,1,4) do @echo.|set /p= ich ;-) 
06.
 ich ;-) ich ;-) ich ;-) ich ;-) 
07.
(=16:46:06  E:\Schnipsel\RenBsp=)
Grüße
Biber
Bitte warten ..
Mitglied: Ren
22.11.2008 um 02:18 Uhr
verzähle ich mich da, oder hast du einen Zeichen Funktionscode mehr als ich? ;)
01.
for /L %i in (1,1,4) do @set /p = doch nicht ;-) <nul 
02.
for /L %i in (1,1,4) do @echo.|set /p= doch nicht ;-) 
Gut, so sieht man es nicht, weil die letzte Leertaste des Textes im unteren Beispiel nicht sichtbar ist. Egal, aber ich meine, am Text sparen, dass kann ja jeder:
Hier z.B. ein "Schnecken-CLS", wer es braucht...
01.
for /L %i in (1,1,2000) do @set /p = <nul
Und wenn wir schon bei einer minimalen Version sind:
01.
for /L %i in (1,1,2000) do @set/p= <nul
Gruß ins Wochenende
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
Powershell - In Textdatei suchen und ersetzen (3)

Frage von Raaja89 zum Thema Batch & Shell ...

RedHat, CentOS, Fedora
gelöst Erstellen von Desktopverknüpfungen und Anpassung der Taskleiste (2)

Frage von honeybee zum Thema RedHat, CentOS, Fedora ...

Vmware
ESXI Template erstellen (2)

Frage von Phill93 zum Thema Vmware ...

Batch & Shell
Ordner erstellen ll Datei hinein kopieren (1)

Frage von heyalice zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...