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

gelöst VBS zur Datei Umbennenung und Entfernen von diverse Character

Mitglied: Braltar

Braltar (Level 1) - Jetzt verbinden

31.08.2006, aktualisiert 19:02 Uhr, 7738 Aufrufe, 8 Kommentare

VBS zur Datei Umbennenung und Entfernen von diverse Character

Hallo,

zuerst Mal... ich bin zeimlich Neuling in VBS.. das Erklärt warscheinlich auch die Frage.

ich habe ein Script die Dateien Aufgrund Erstelldatum umbennent, und numeriert.
Bisher funktioniert dieser auch einwandfrei. nur folgende weitere Funktionen habe ich leider nicht erfolgreich implementieren können.
(sollte unbedingt per VBS gelöst werden, also kein rename Tool...)

Die Dateinamen sehen nach ersten Ablauf so aus...

YYYYMMDDXX-ZZ.JPG also z.B. 20060830CN-01.jpg

und sind alle im gleichen Ordner.

YYYY = Jahr , MM = Monat, DD = Tag, XX = Kürzel ( als Variable von einem Input Box) und ZZ = ist die Nummerierung.


Nun sollte ich

1: die zwei erste nummer des Jahres entfernen

Ergebnis Beispiel Datei:

YYMMDDXX-ZZ.JPG also z.B. 060830CN-01.jpg



2: der - entfernen

Ergebnis Beispiel Datei:

YYMMDDXXZZ.JPG also z.B. 060830CN01.jpg


also in Kurze:

gibt es ein MusterBatch für gewisse Positionen von Dateinamen durch andere (in diesem Fall Leere Zeichen) zu ersetzen?

Vielen Dank im Voraus,
Braltar
Mitglied: AndreasHoster
31.08.2006 um 13:08 Uhr
Als vbs Skribt würde ich das so machen:

Set fso = CreateObject("Scripting.FileSystemObject")
' Verzeichnis holen
Set ofolder = fso.GetFolder("Pfad zu Verzeichnis")
' Alle Dateien im Verzeichnis durchgehen
For each file in ofolder.Files
'Name holen
sName = file.Name
'ersten 2 Buchstaben entfernen
sName = Mid(sName,3)
' - durch nichts ersetzen
sName = Replace(sName,"-","")
'Name wieder zurückschreiben
file.name = sName
Next
Bitte warten ..
Mitglied: Biber
31.08.2006 um 13:25 Uhr
Moin Braltar,

Beispiel:
01.
'fnametest.vbs 
02.
Set objFSO = CreateObject("Scripting.FileSystemObject") 
03.
set of =objFSO.GetFile("2006-08-30xy.txt") 
04.
wscript.echo "Filename old [" & of.name & "] rename to --> [" & Mid( of.name ,3) & "]" 
05.
of.name = Mid( of.name ,3) 
06.
wscript.echo "Filename now[" & of.name & "]" 
07.
wscript.echo "Filename old [" & of.name & "] rename to --> [" & Replace( of.name ,"-","") & "]" 
08.
of.name = Replace( of.name ,"-","")
Test am CMD-Prompt:
01.
>cscript //nologo fnametest.vbs 
02.
Filename old [2006-08-30xy.txt] rename to --> [06-08-30xy.txt] 
03.
Filename now[06-08-30xy.txt] 
04.
Filename old [06-08-30xy.txt] rename to --> [060830xy.txt]
HTH Biber
[Edit] Upps, sorry, AndreasHoster.... das war über Kreuz gepostet [/Edit]
Bitte warten ..
Mitglied: Braltar
31.08.2006 um 15:55 Uhr
Vielen Dank!

genau das habe ich gemeint...

jetzt noch eine "kleine" Frage,

ich möchte noch folgendes tun.

abfragen ob an eine gewisse Position ein Punkt vorhanden ist, wenn ja ein 0 an ein gewisse Position reinschreiben...

also etwas in der Art:

If (von links gezählt an position 8 ein "." vorhanden ist) then
schreib ein "0" an Position 7
else
End If

eine Idee?
Bitte warten ..
Mitglied: AndreasHoster
31.08.2006 um 16:38 Uhr
Willst Du jetzt das Zeichen an Position 7 durch 0 ersetzen, oder soll an Position 7 eine 0 hinzugefügt werden, also das bisherige 7te Zeichen an die 8. Position rücken?
Bitte warten ..
Mitglied: Biber
31.08.2006 um 16:41 Uhr
Beispiel dafür:
01.
Text ="datei27.3.2005-txt" 
02.
wscript.echo text & " Pos. von [.]=" & Instr(text, ".") _  
03.
                &  " Pos. von [3]="   & Instr( text, "3") _  
04.
                &  " Pos. von [-]="   & Instr(text, "-") 
05.
 
06.
If mid(text,8,1) = "." then wscript.echo "Ersetzen: " & mid(text,1,7) &"0" & mid(text,9) 
07.
If mid(text,8,1) = "." then wscript.echo "Einfügen: " & mid(text,1,8) &"0" & mid(text,9) 
08.
 
09.
wscript.quit 
10.
'OUTPUT: datei27.3.2005-txt Pos. von [.]=8 Pos. von [3]=9 Pos. von [-]=15 
11.
'OUTPUT: Ersetzen: datei2703.2005-txt 
12.
'OUTPUT: Einfügen: datei27.03.2005-txt
Bitte warten ..
Mitglied: Braltar
31.08.2006 um 17:00 Uhr
danke Andreas,

also inder Folge

If Position X auswerten, und im Fall ein gewisser Zeichen Vorhanden ist

then Zeichen an Position Y einfügen, andere Zeichen nach rechts schieben...

wenn nicht vorhanden, namen unbeachtet lassen...

Beispiel

ich habe 2 Dateinamen:

123456-1.jpg und 123456-11.jpg

(weil die automatische numerierung nicht immer 2 nummer einsetz (von 1 bis 9) habe ich verschiedene namens-länge) ein detail, aber ich mag details...

darum habe ich gedacht, der . in nur auf Position 8, wenn die Nummerierung nur ein zeichen hat, und ich kann dann (an Position 6 z.Beispiel) ein 0 hinzufügen....

ich hoffe ich kläre mehr durch antworten als ich durcheinander bringe...

vielen Dank.
Bitte warten ..
Mitglied: AndreasHoster
31.08.2006 um 17:14 Uhr
Im Prinzip wie von Biber vorgeschlagen, nur beim 2. mid ab Stelle 8, da wir hinzufügen, nicht ersetzen wollen:

if mid(sName,8,1) = "." then
sName = mid(sName,1,7) & "0" & mid(sName,8)
end if

Und das einfach vor dem Namen zurückschreiben in meinem Skript einfügen.
Bitte warten ..
Mitglied: Braltar
31.08.2006 um 19:02 Uhr
vielen vielen dank....

Der Projekt kann jetzt in letzer Schleif gehen...

alles funktionniert wie geplant, und ich weiss jeztz wo ich wirklich hilfe bekomme

gruss,
braltar
Bitte warten ..
Ähnliche Inhalte
VB for Applications
VBS bringt diverse Fehlermeldungen
gelöst Frage von VBSNOOBVB for Applications2 Kommentare

Guten Tag zusammen, ich habe einen kleinen Script programmiert, der eine einheitliche Email Signatur erstellt. Dieser Script wird per ...

VB for Applications

Per VBS bestimmten Knoten aus XML Datei entfernen

gelöst Frage von aletriVB for Applications9 Kommentare

Guten Morgen allerseits Mit diesem Script möchte ich bestimmten Knoten aus XML Datei entfernen. Der Script wird ohne Fehlermeldung ...

Windows 7

Nach Entfernen diverser Trojaner: "Fehler beim Laden des Moduls"

Frage von MyApps2GO.deWindows 77 Kommentare

Hallo zusammen, versuche hier momentan einen verseuchten Rechner zu bereinigen, läuft soweit auch ganz gut, leider kommt beim starten ...

Basic

Regex Anzahl Character Nicht Anzahl Bytes

gelöst Frage von PeronasBasic6 Kommentare

Guten Morgen zusammen, und zwar habe ich eine Frage bzgl. RegEx/RegExp. Ich habe einen regulären Ausdruck der wie folgt ...

Neue Wissensbeiträge
Windows 10

Blackscreen nach dem Update von 1808 auf 1809 wenn der Rechner aus dem Standby gestartet wird

Tipp von FSX2010 vor 1 StundeWindows 10

Habt ihr den Samsung Teriber Samsung_NVM_Express_Driver_3.0 installiert habt muss dieser für 1809 deinstalliert werden da dieser wohl nicht kompatibel ...

Utilities
Teamviewer 14 Verbindungsprobleme mit Proxy
Tipp von PeterleB vor 1 TagUtilities

Nach dem Umstieg von Version 13 auf 14 wollte sich TV nicht mehr mit dem Netz verbinden, ignorierte offenbar ...

Administrator.de Feedback
Unsere Datenbank wurde umgestellt
Information von Frank vor 1 TagAdministrator.de Feedback5 Kommentare

Hallo User, ich habe in der Nacht unsere Datenbank umgestellt. D.h. neue Version (MySQL 8) und andere Örtlichkeit. Sollte ...

Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 4 TagenSonstige Systeme8 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Heiß diskutierte Inhalte
Windows 10
Programm unter Windows 10 automatisch mit administrativen Rechten starten
Frage von GrafmulderWindows 1021 Kommentare

Hallo zusammen! Zur Situation: Ich benutze Windows 10 Pro für Workstations (Build 1803) mit zwei Konten. Einem Administratorkonto und ...

Vmware
Gebrauchten ESXi- Server verkaufen: Festplatten DSGVO-konform löschen?
Frage von l.scheperVmware20 Kommentare

Hallo, wir möchten einen gebrauchten FUJITSU Server verkaufen. Auf dieser Maschine ist noch ein installiertes ESXi 5.1 und ne ...

LAN, WAN, Wireless
Empfehlung Powerline Adapter
Frage von AgilolfingerLAN, WAN, Wireless16 Kommentare

Hallo Zusammen, ich brauche eine Empfehlung von euch. Ich möchte in einem privaten Haushalt eine Powerline Lösung einrichten. Allerdings ...

Router & Routing
Dediziertes ISP -Routing
gelöst Frage von niLuxxRouter & Routing13 Kommentare

Liebe Community, Ich hätte eine kurze Frage an euch. Durch verschiedene Umstände kann es nun sein, dass sich zwei ...