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

find und move kombieren

Frage Entwicklung Batch & Shell

Mitglied: marwin

marwin (Level 1) - Jetzt verbinden

08.06.2006, aktualisiert 09.06.2006, 4242 Aufrufe, 4 Kommentare

Hallo,

ich möchte mit dem find- oder findstr-befehl und move-befehl kombinieren und dabei Dateien des gleichen Typs in einen anderen Ordner verschieben.
Mit find will ich die Dateien nach einer Zeichenfolge durchsuchen und die gefunden Dateien mit einem move befehl verschieben.
Wie stelle ich das an, die befehle einzeln sind kein Problem nur beide zusammen bekomme ich nicht hin.
Einfache Batchdateien sind kein Thema, nur von for, if usw. hab ich keine Ahnung.

Vielen Dank
Mitglied: 11078
08.06.2006 um 22:21 Uhr
[EDIT]
------UUUpsss! Sorry, habe nachträglich gemerkt, dass es um Windows geht. Na ja, da kannst Du trotzdem auch mit | arbeiten. ----
[/EDIT]

Hallo,

ist jetzt nur am Reißbrett überlegt:

Befehle verbindest Du mit dem Zeichen: | Der Output des einen Befehls wird dann an den nächsten weiter gegeben. Etwa so:

find -iname *\.php | less

"find" sucht alle Dateien mit der Endung php und less sorgt dafür, dass nicht einfach tausende am Bildschirm an mir vorbei rutschen sondern ich durch die Ergebnisse scrollen kann...

Das ist das eine. Allerdings weiß ich nicht - und kann es gerade auch nicht testen - ob es sich so einfach mit einem move Befehl verbinden lässt, denn: Im beispiel werden an less ja nicht die einzelnen gefundenen Dateinamen als string übergeben sondern die ganze Liste auf einmal...

Lies Dich mal in "Pipes" ein:
http://de.wikipedia.org/wiki/UNIX_pipes#Unix
http://www.bellevuelinux.org/pipes.html



Vielleicht hat noch jemand eine Idee.


Gruß,
Tim
Bitte warten ..
Mitglied: marwin
08.06.2006 um 23:45 Uhr
hallo

erstmal danke für die schnelle Antwort
ja ich arbeite mit Windows, deshalb muss ich mich erstmal entschuldigen

also mit .... find /I "@@" c:\neu\*.txt .... kann ich mir anzeigen lassen in welcher datei @@ vorkommt, also nicht im dateinamen sondern im text selbst
und mit ... >>log.txt ... auch in eine logdatei schreiben lassen ...

die sieht dann zb. so aus:

C:\NEU\SCHEDLGU.TXT

C:\NEU\SEGMENT1.TXT
@@

C:\NEU\SEGMENT2.TXT

C:\NEU\SEGMENT3.TXT
@@

C:\NEU\SEGMENT4.TXT

C:\NEU\SEGMENT5.TXT


jetzt stehen da natürliche alle dateien drin die durchsucht werden, hilft nicht viel
mit | less bekomme ich fehler: befehl falsch geschrieben oder konnte nicht gefunden werden

dachte man könne das in einer for-schleife einbauen .....
zb. mit:

@ECHO OFF
@for /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set SICDATE=%%d-%%c-%%b
@for /R %%e in (.) do copy %%e\*.txt c:\neu

kann ich mir alle txt-dateien mit akuellem datum in einen ordner kopieren lassen, oder hab ich da einen denkfehler. kann auch gut sein dass es mit einer batch nicht funktioniert und man muss es mit vbs,java oder php realisieren
Bitte warten ..
Mitglied: Biber
09.06.2006 um 09:44 Uhr
Moin marwin,

ganz klar ist mir noch nicht, nach welchem Kriterium Du nun verschieben willst... nach aktuellem Datum oder enthaltenem Suchtext...

Nehmen wir erstmal den Suchtext:
Wenn ich alle *.txt-Dateien im aktuellen Verzeichnis nach dem String "Biber" durchsuchen will und diejenigen nach "c:\temp\biberfound" verschieben, die den String enthalten, dann:
01.
for /f %i in ('dir /b *.txt') do @type %i|find /i "Biber">nul && Echo Move %i c:\temp\biberfound\%i 
02.
 
03.
[würde führen zu...] 
04.
Move Temp-Dokument.txt c:\temp\biberfound\Temp-Dokument.txt 
05.
-oder noch einfacher- 
06.
for %i in (*.txt) do @type %i|find /i "Biber">nul && Echo Move %i c:\temp\biberfound\%i
Das "Echo" ist natürlich nur zur Simulation und muss zum Scharf-Machen gelöscht werden.

Falls ich Dich falsch verstanden habe, formulier bitte Deine Anforderung nochmal um.

Gruß
Biber
Bitte warten ..
Mitglied: marwin
09.06.2006 um 13:31 Uhr
tach Biber

nee hast mich richtig verstanden, möchte nach Zeichenfogen in Dokumenten suchen, dass mit dem Datum war nur ein Beispiel.
Werde es mal testen und gebe Info wenn es funktioniert bzw ob ich es hin bekomme.

Danke und Gruß
Marwin


edit

habe gestestet, bekomme Fehler .... "do" ist syntaktisch an dieser Stelle nicht verarbeitbar usw.
ist für mich doch ein schwieriger als ich gedacht hab .....

edit
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst PowerShell Script Move-Item nach x Tagen (5)

Frage von lupolo zum Thema Batch & Shell ...

Exchange Server
Move Public Folder to another Public Folder (4)

Frage von c64b311ee9 zum Thema Exchange Server ...

Batch & Shell
gelöst Nonsense Error - find ihn nicht. (Batch) (7)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...