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

Verzeichnis durchsuchen und Verknüpfungen erstellen

Frage Entwicklung Batch & Shell

Mitglied: hahlrichsneu

hahlrichsneu (Level 1) - Jetzt verbinden

15.05.2008, aktualisiert 21.05.2008, 9155 Aufrufe, 6 Kommentare

Per Batch ein Verzeichnis nach bestimmten Dateien durchsuchen und von den Ergebnissen Verknüpfungen erstellen

Hallo,
ich habe folgende Aufgabe.
Ich möchte per Batch einen Ordner inkl. Unterordner nach PDF Dateien durchsuchen.
Die gefundenen PDF’s sollen dann als Verknüpfung Datei .lnk in einem Zielordner abgespeichert werden.

Ich hab es jetzt schon ein paar mal versucht, hierzu eine Batch zu editieren bin aber leider nicht auf ein vernünftiges Ergebnis gekommen.
Kann mir jemand bei dieser Aufgabe helfen?
Gruß
Holger
Mitglied: Jere
16.05.2008 um 10:36 Uhr
wie weit bist du denn gekommen?
schreibs mal hier rein...
Bitte warten ..
Mitglied: kunert0345
18.05.2008 um 00:13 Uhr
Ich hab Rum geknobelt aber leider geht das glaube ich nicht über Batch.

Stattdessen hab ich ein Programm geschrieben das nach pdfs sucht und in einen Ordner (pdf) kopiert.
leider funktioniert es nicht wenn in unter Verzeichnissen ein Ordner oder die pdf ein Leerzeichen besitzt (tja da wünscht man sich die alten Normen und regeln wie z.b. keine Leerzeichen und alles nur 3 Buchstaben)

Das Prog:

@echo off
if not exist pdf md pdf
echo for %%%%t in ( > tmp.bat
dir /s /b *.pdf >> tmp.bat
echo ) do copy %%%%t pdf >> tmp.bat
echo del tmp.bat >> tmp.bat
tmp.bat
Bitte warten ..
Mitglied: hahlrichsneu
20.05.2008 um 11:41 Uhr
Hallo,
danke ersteinmal zusammen für die Antworten.
Ich hatte folgendes Batch zum erstellen der .lnk Dateien gefunden/editiert:
@echo off & setlocal

::Speicherort der Verknüpfung (unterhalb von Startmenue\Programme)
set "zielpfad=D:\Austausch\XXXXX"
::Falls das Symbol auf den Desktop soll:
::set "zielpfad=%userprofile%\Desktop"

::Name der Verknüpfung (ohne ".lnk")
set "progtitel=XXXXXXX"
::Speicherort der Programmdatei (wird auch für "Ausführen in:" verwendet)
set "progdir=C:\Programme"
set "progexe=XXXXXXXXX.exe"
::Kommentar
set "beschreibung=Erklärung eigentlich unnötig ..."

::Bei Bedarf Speicherordner der Verknüpfung erstellen (siehe oben "zielpfad"):
if not exist "%zielpfad%" md "%zielpfad%"

::temporäres VBScript erzeugen ...
echo Set objShell=WScript.CreateObject("Wscript.Shell")>%temp%\MakeShortCut.vbs
echo Set objShortcut=objShell.CreateShortcut("%zielpfad%\%progtitel%.lnk")>>%temp%\MakeShortCut.vbs
echo objShortcut.TargetPath="%progdir%\%progexe%">>%temp%\MakeShortCut.vbs
echo objShortcut.Description="%beschreibung%">>%temp%\MakeShortCut.vbs
echo objShortcut.WorkingDirectory="%progdir%">>%temp%\MakeShortCut.vbs
echo objShortcut.Save>>%temp%\MakeShortCut.vbs

::... ausführen ...
cscript //nologo %temp%\MakeShortCut.vbs

::... und wieder löschen.
del %temp%\MakeShortCut.vbs





und folgendes um die Pdf's zu suchen und zentral zu kopieren:

for /r "d:\austausch\" %%i in (*.ico) do copy "%%i" "d:\austausch\test\%%~nxi"


ich bring se aber leider nicht zusammen.
Vieleicht schafft es jemand anders

Gruß
Holger
Bitte warten ..
Mitglied: Jere
20.05.2008 um 13:30 Uhr
Hallo Holger,
ich verzweifel langsam an deinen Scripten,
kriege es nicht wie gewünscht hin.
Aber da du immer so nett bist, wollt ich dir zumindest kund tun das ich dich nicht vergessen habe.

Gruß
J
Bitte warten ..
Mitglied: hahlrichsneu
21.05.2008 um 11:01 Uhr
Hallo Jere,
sehr nett von Dir.
Ich möchte Dich damit aber nicht von wichtigeren Sachen abhalten

Falls ich in diesem Forum zu keiner Lösung komme, ist es halt so. Ich werd es überleben

Vielen Dank
Holger
Bitte warten ..
Mitglied: Wolfsrudel
16.01.2009 um 09:10 Uhr
Batch
01.
FOR /F %%i IN ('DIR /B d:\austausch\*.ico') DO ( 
02.
    XCOPY %%i d:\austausch\test\%%~nxi /D /Y /Q /H /K 
03.
04.
 
05.
FOR /F %%a IN ('DIR /B d:\austausch\test\*.ico') DO ( 
06.
    CSRIPT create_shortcut.vbs "%userprofile%\Desktop" %%a "d:\austausch\test" %%a %%a "d:\austausch\test" //NOLOGO  
07.
)
VB-Script "create_shortcut.vbs"
01.
Set objShell=WScript.CreateObject("Wscript.Shell") 
02.
Set objShortcut=objShell.CreateShortcut(wscript.arguments(0) & "\" & wscript.arguments(1) & ".lnk") 
03.
objShortcut.TargetPath=wscript.arguments(2) & "\" & wscript.arguments(3) 
04.
objShortcut.Description=wscript.arguments(4) 
05.
objShortcut.WorkingDirectory=wscript.arguments(2) 
06.
objShortcut.Save
Meine Lösung ;) Habe auch lange damit rumspielen müssen, aber es funktioniert.
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...