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

Dateinamen als variable... wie geht das

Frage Entwicklung Batch & Shell

Mitglied: Nowologix

Nowologix (Level 1) - Jetzt verbinden

27.09.2007, aktualisiert 02.10.2007, 14093 Aufrufe, 5 Kommentare

Ich wollte einen dateinamen als variable speichern... habe schon vieles versucht aber bin nicht dahintergestiegen...


z.B: order\datei.txt

meine variable sollte dann %varib% heißen... und bei
echo %varib%
sollte demzufolge "datei.txt" herauskommen...

kann mir jemand helfen ?
Mitglied: bastla
27.09.2007 um 18:28 Uhr
Hallo Nowologix!

Grundsätzlich ginge das etwa so:
01.
set "Pfad=order\datei.txt" 
02.
for /f "delims=" %%i in ('echo %Pfad%') do set "varib=%%~nxi" 
03.
echo %varib%
Den Umweg über das "echo %Pfad%" kannst Du Dir ersparen, wenn der Pfad als Parameter übergeben wird:
01.
set "varib=%~nx1"
Ausgangspunkt für die Zerlegung muss also entweder eine Parametervariable (%1, %2, ...) oder die Schleifenvariable einer "for"-Schleife sein - siehe auch gegen Ende der Hilfe zu "for" ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
27.09.2007 um 19:29 Uhr
Hmmmja, bastla,

bevor ich Deinen Lehrschnipsel aber für 50 Euro an eine dieser Tankstellen-PC-Zeitschriften als Tipp verhöke^H^H weiterempfehle, würde ich die Variable "Pfad" aber in "Datei" umbenennen...

Noch besserer Schnipsel:
01.
set "Datei=order\datei.txt" 
02.
for /f "delims=" %%i in ('echo %Datei%') do set "varib=%%~nxi" 
03.
echo %varib%
Andere Variante: die Variable ohne "FOR /F"; nur mit FOR passend machen:

01.
>set "varib= blubb/bla bla bla.txt" 
02.
>for %i in ("%varib%") do @echo %~nxi 
03.
bla bla bla.txt
Grüße
Biber
Bitte warten ..
Mitglied: bastla
27.09.2007 um 19:37 Uhr
@Biber

Sollten wir's dann nicht gleich so machen (um vielleicht den "besten Schnipsel" - ohne Berücksichtigung Deiner anderen, wie ich finde, ohenhin viel besseren, Variante - zu erreichen):
01.
set "DateiMitPfadAberNochOhneLaufwerk=order\datei.txt" 
02.
for /f "delims=" %%i in ('echo %DateiMitPfadAberNochOhneLaufwerk%') do set "varib=%%~nxi" 
03.
echo %varib%
Grüße
bastla

P.S.: " ... für 50 Euro an eine dieser Tankstellen-PC-Zeitschriften als Tipp verhöke^H^H weiterempfehle ..." - ist das nicht etwas zu billig?
Bitte warten ..
Mitglied: Biber
29.09.2007 um 15:19 Uhr
Moin nowologix,

wie ist denn denn der gefühlte Status Deiner Frage? Beantwortet? Verschlimmert? Unverstanden?

Bitte gib doch mal Feedback.

Grüße
Biber
Bitte warten ..
Mitglied: Nowologix
02.10.2007 um 09:38 Uhr
wunderbar alles danke der nachfrage =)

es ging darum das ein programm eine datei erstellt mit dem dateinamen der IP.....

alles funktioniert... vielen dank nochmal

(for %%i in (%windir%\help\ip\*) do set "myip=%%~nxi")
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 10
gelöst PdfFactory defekt - Windows 10 Profil reparieren - wie geht das? (4)

Frage von Rene1976 zum Thema Windows 10 ...

JavaScript
AngularJS Variable über Input in Funktion ausführen

Frage von badkilla zum Thema JavaScript ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...