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

Batch schreiben um einen Ordner auszulesen, welche Dateien nicht schreibgeschützt sind, um diese an einen anderen Ort zu kopieren

Frage Entwicklung Batch & Shell

Mitglied: bergo

bergo (Level 1) - Jetzt verbinden

13.08.2010, aktualisiert 11:43 Uhr, 2968 Aufrufe, 8 Kommentare

Hallo Admingemeinde,

In einem Ordner (geben wir ihm den Laufwerksbuchstaben P) befinden sich Dateien, die von einem Scanner erzeugt werden. Die Endung ist ".ERG".
Es kommen täglich welche hinzu.
Auch täglich kopiere ich nun die neuesten in einen anderen Ordner (geben wir ihm den Laufwerksbuchstaben Q), wo sie vom Server verarbeitet und gelöscht werden.
Damit ich nun nicht die Dateien von gestern mitkopiere, markiere ich die Dateien in P mit dem Attribut "R" (Schreibgeschützt).
Diesen Vorgang des Kopierens möchte ich nun per BATCH automatisieren.

Als Struktogramm evtl. so:

Lese alle Dateien *.ERG ohne "R" im Ordner P
  • wenn Datei ohne "R" kopiere nach Q und setze Attribut "R" auf Datei in P
nächste Datei

Ich hoffe das Problem kann einfach gelöst werden.
Mitglied: 60730
13.08.2010 um 11:58 Uhr
Moin,

ungetestet aus dem Bauch
Bitte nicht so laufen lassen - sondern in einer eigenen Dosbox und nicht mit produktivdaten im produktivsystem.
Wenn das läuft - kannst du gerne die erste Zeile ändern, aber nur dann - und wenn du was änderst - stelle sicher dass echo on ist.

01.
@echo ON 
02.
for /f %%a in ('"dir /b /s /a-R p:\*.ERG"') do ( 
03.
                                          copy %%~fa q:\ 
04.
                                          attrib %%~fa +R 
05.
06.
pause
btw - statt Read only würde ich ja das Archivbit nehmen....

Gruß
Bitte warten ..
Mitglied: bergo
13.08.2010 um 12:08 Uhr
Hallo,
werde es am Montag testen und berichten.
vielen Dank erstmal.
Bitte warten ..
Mitglied: 60730
13.08.2010 um 12:12 Uhr
Salü,
Zitat von bergo:
Hallo,
werde es am Montag testen und berichten.
? Warum - bau dir doch deine beiden Laufwerke - notfalls mit Subst und lass es über ein paar Testdaten laufen - schadet doch nix und wer weis, wer am Montag Zeit hat?
Was du heute kannst besorgen verschiebe nie auf morgen - schon garnicht im Batch 4 Hell Bereich - wenn "morgen" Montag ist und Biber die Boomtown Rats singt

vielen Dank erstmal.

erst die Arbeit - zufriedenes Testergebnis - dann das danke....und den grünen Haken.
Bitte warten ..
Mitglied: bastla
13.08.2010 um 12:12 Uhr
@T-Mo
statt Read only würde ich ja das Archivbit nehmen....
... wenn's nicht bei der Sicherung ausradiert wurde ...

Grüße
bastla
Bitte warten ..
Mitglied: 60730
13.08.2010 um 12:25 Uhr
@bastla
Zitat von bastla:
@T-Mo
> statt Read only würde ich ja das Archivbit nehmen....
... wenn's nicht bei der Sicherung ausradiert wurde ...
ich schreib doch aus dem Bauch ungetestet...

Mir widerstrebt der Gedanke - dass sonst die Möglichkeit bestünde,
das wenn sich die Sekretärin mit Ihrem nackten Bobbes auf den Scanner setzt - ich der noch nicht ganz fertig gescannten Datei den Schreibschutz unterjubele und ich dann wieder bis zur Weihnachtsfeier warten muß

Grüße
bastla

retour
Bitte warten ..
Mitglied: bergo
16.08.2010 um 09:29 Uhr
Hallo,
Freitags immer früh Feierabend

Das Danke kam bereits, da ich nach Sichtung der Zeile mir schon vorstellen konnte, dass das die Lösung werden würde.

Also zum Test:
Super, hat funktioniert. und in einem Tempo, was man mit Drag 'n' Drop und so, nicht hinbekommt. Spitze Timo!!!!
Aber Achtung: Kopiert auch alle Unterverzeichnisse.

Vielen Dank für die Antwort und eine ruhige Woche wünsche ich.
Bitte warten ..
Mitglied: 60730
16.08.2010 um 09:35 Uhr
Zitat von bergo:
Hallo,
Freitags immer früh Feierabend
du glücklicher...


Das Danke kam bereits, da ich nach Sichtung der Zeile mir schon vorstellen konnte, dass das die Lösung werden würde.

Also zum Test:
Super, hat funktioniert. und in einem Tempo, was man mit Drag 'n' Drop und so, nicht hinbekommt. Spitze Timo!!!!
Aber Achtung: Kopiert auch alle Unterverzeichnisse.

Dann nimm dem dir das /S weg - das war nur vorsorglich
for /f %%a in ('"dir /b /a-R p:\*.ERG"') do (

Vielen Dank für die Antwort und eine ruhige Woche wünsche ich.
Deine Worte in Inris Vaters Ohr

so long
Bitte warten ..
Mitglied: bastla
16.08.2010 um 09:37 Uhr
Dann nimm dem dir das /S weg
... wobei es so etwas sicherer wird:
01.
@echo ON 
02.
pushd p:\ 
03.
for /f "delims=" %%a in ('dir /b /a-R *.ERG 2^>nul') do ( 
04.
    copy "%%a" q:\ >nul 
05.
    attrib "%%a +R" 
06.
07.
popd 
08.
pause
[Edit] Noch etwas "behübscht" [/Edit]

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Microsoft
Im ordner nach dateien aus excel liste suchen (2)

Frage von tioloco zum Thema Microsoft ...

Batch & Shell
gelöst Batch aktuellsten Ordner kopieren (2)

Frage von MmarKuss zum Thema Batch & Shell ...

Batch & Shell
gelöst Win7-Batch - bestimmte Ordner in TEMP löschen (1)

Frage von jan99 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (15)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

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

VB for Applications
Daten eines einzelnen Tabellenblatt als Mail versenden (kein Dateianhang) (9)

Frage von Zentralenteufel zum Thema VB for Applications ...