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

Ordner erstellen - nummeriert

Frage Entwicklung Batch & Shell

Mitglied: tandaluso

tandaluso (Level 1) - Jetzt verbinden

04.10.2006, aktualisiert 05.10.2006, 5904 Aufrufe, 8 Kommentare

Hallo,

ich möchte gerne Tagesordner für einen ganzen Monat erstellen: 06-10-01 bis 06-10-31. In jeden Ordner soll dann noch ein Unterordner "Berichte" erstellt werden. Soweit hab ich das hier:

@ECHO OFF

SET I=1

:BODY
IF %I% == 32 GOTO EXIT
MD C:\test\06-10-%I%
SET /A I=%I%+1
GOTO BODY

:EXIT
@ECHO ON
EXIT

Jedoch erstellt er bei den ersten 9 ohne die 0 vorweg (01,02,03,04 etc.). Und wie bekomm ich die unter Ordner noch eingefügt?

Weis jemand Rat?

Gruß tandaluso
Mitglied: bastla
05.10.2006 um 07:59 Uhr
Hallo tandaluso!

Eine Schleife für die einstelligen Tage (und "0" extra angeben), eine zweite für den Rest:

01.
FOR /L %%i in (1,1,9) Do MD C:\test\06-10-0%%i 
02.
FOR /L %%i in (10,1,31) Do MD C:\test\06-10-%%i
Schön ist das Ganze natürlich nicht (v. a. Jahr und Monat sowie Monatsende [31] fest verdrahtet) ...

HTH
bastla
Bitte warten ..
Mitglied: MadMag
05.10.2006 um 08:01 Uhr
Hallo, ich habe hier auch eine Lösung für deine Probleme:

@ECHO OFF

SET I=1

:BODY1
IF %I% == 10 GOTO BODY2
MD C:\test\06-10-0%I%\Unterordner
MD C:\test\06-10-0%I%\Unterordner2
SET /A I=%I%+1
GOTO BODY1

:BODY2
IF %I% == 32 GOTO EXIT
MD C:\test\06-10-%I%\Unterordner
MD C:\test\06-10-%I%\Unterordner2
SET /A I=%I%+1
GOTO BODY2

:EXIT
@ECHO ON
EXIT

Du musst halt nur darauf achten die Unterordner in Body1 und in Body2 anzulegen.
Sonst werden sie entweder bei Ordern 01-09 oder bei Ordner 10-31 erstellt.

Gruß MadMag
Bitte warten ..
Mitglied: Biber
05.10.2006 um 09:53 Uhr
Moin tandaluso,

einen hätte ich noch aus der Reihe "Mein schönster Oneliner"....

01.
:: --snipp MdMonatsDirs.bat 
02.
@for %%i in (01:31 02:28  03:31 04:30 05:31 11:30 12:31) do @( 
03.
  for /f "delims=: tokens=1-2" %%m in ("%%i") do @( 
04.
     for /l %%a in (1,1,%%n) do @( 
05.
       if %%a lss 10 @( 
06.
       @ECHO if not exist 06-%%m-0%%a\Berichte md 06-%%m-0%%a\Berichte 
07.
       ) else ( 
08.
       @ECHO if not exist 06-%%m-%%a\Berichte md 06-%%m-%%a\Berichte 
09.
 )))) 

[Wie immer das GROSS geschriebene @ECHO zum Scharfmachen löschen.
Und die Monatsliste in der ersten Zeile natürlich vervollständigt werden.]

Gruß
Biber
Bitte warten ..
Mitglied: bastla
05.10.2006 um 13:46 Uhr
@Biber

... und Schaltjahresberücksichtigung passt da nicht mehr rein?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
05.10.2006 um 14:10 Uhr
@bastla

natürlich - in einem Produktivbatch würde ich selbstverständlich noch eine For-Schleife für die Jahre:TageImFeb außen herumlegen:
01.
@for %%x in (2006:28 2007:28 2008:29 ..) do for /f "delims=: tokens=1,2" in ("%%x") Do... 
02.
...
...aber erstens sollte das ja nur eine Skizze sein, und zweitens können wir beim nächsten Schaltjahr vielleicht schon etwas Eleganteres mit der M$-Vista PowerShell zaubern .

Oder im übernächsten Schaltjahr...

Grüße
Biber
Bitte warten ..
Mitglied: bastla
05.10.2006 um 14:21 Uhr
@Biber

... und PowerShell wird sich auf Monade verstehen?

SCNR
bastla
Bitte warten ..
Mitglied: Biber
05.10.2006 um 14:23 Uhr
*pruuuuuuuuuust*
Bitte warten ..
Mitglied: tandaluso
05.10.2006 um 23:09 Uhr
Hallo,

und wie ist das mit der Sommerzeit?
Danke, hat soweit alles funktioniert.

Gruß Tandaluso
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
Ordner erstellen ll Datei hinein kopieren (1)

Frage von heyalice zum Thema Batch & Shell ...

Batch & Shell
Batch: .rar-Pakete automatisch Ordner erstellen und verschieben (2)

Frage von BowserMD zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Ordner erstellen und verschieben (6)

Frage von Fromeonly zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...