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

VLC Shutdown Script (Optimierung)

Frage Entwicklung Batch & Shell

Mitglied: mc-doubleyou

mc-doubleyou (Level 2) - Jetzt verbinden

02.10.2011 um 23:25 Uhr, 4088 Aufrufe, 8 Kommentare

Hallo zusammen, eigentlich habe ich schon ein Script das funktioniert, aber ich denke es ginge erstens einfacher und zweitens evtl. auch mehr als 9 Dateien.

Also das habe ich bis jetzt

Start myVLC.bat
01.
@echo on 
02.
set p=%~dp0 
03.
 
04.
set a=%1 
05.
set a=%a:"=% 
06.
 
07.
set b=%2 
08.
set b=%b:"=% 
09.
 
10.
set c=%3 
11.
set c=%C:"=% 
12.
 
13.
set d=%4 
14.
set d=%d:"=% 
15.
 
16.
set e=%5 
17.
set e=%e:"=% 
18.
 
19.
set f=%6 
20.
set f=%f:"=% 
21.
 
22.
set g=%7 
23.
set g=%g:"=% 
24.
 
25.
set h=%8 
26.
set h=%h:"=% 
27.
 
28.
set i=%9 
29.
set i=%i:"=% 
30.
 
31.
 
32.
echo %a% > %p%varmedia.m3u 
33.
if not "%b%"=="" echo %b% >> %p%varmedia.m3u 
34.
if not "%c%"=="" echo %c% >> %p%varmedia.m3u 
35.
if not "%d%"=="" echo %d% >> %p%varmedia.m3u 
36.
if not "%e%"=="" echo %e% >> %p%varmedia.m3u 
37.
if not "%f%"=="" echo %f% >> %p%varmedia.m3u 
38.
if not "%g%"=="" echo %g% >> %p%varmedia.m3u 
39.
if not "%h%"=="" echo %h% >> %p%varmedia.m3u 
40.
if not "%i%"=="" echo %i% >> %p%varmedia.m3u 
41.
 
42.
start "Start myVLC" /MIN "play varmedia.bat"
play varmedia.bat
01.
@echo off 
02.
 
03.
vlc.exe varmedia.m3u vlc://quit 
04.
shutdown -s -t 60
Soweit würde ich meinen dass es funktioniert, aber naja bastla oder biber würden es sauberer machen und darum frag ich mal *gg*

lg mc-dy
Mitglied: 60730
03.10.2011 um 00:13 Uhr
moin mcdoubledutch,

Hallo zusammen, eigentlich habe ich schon ein Script das funktioniert, aber ich denke es ginge erstens einfacher und zweitens evtl. auch mehr als 9 Dateien.

Nunja, erstens kommt es anders und zweitens, als man denkt.

Der Sinn des Scriptes mag mir nicht wirklich in den Kopf, magst du vielleicht etwas dazu schreiben, was funktionieren soll?

Das soll eine Drop2batch sein und der Sinn ist der, eventuelle "" zu entfernen, eine m3u zu schreiben?
Bitte warten ..
Mitglied: rubberman
03.10.2011 um 01:10 Uhr
Hallo mc-doubleyou.

Dein erster Batch ließe sich wohl auf 2 Zeilen zusammenschrumpfen.
01.
>"varmedia.m3u" (for %%i in (%*) do echo %%~i) 
02.
start "Start myVLC" /MIN "play varmedia.bat"
Grüße
rubberman
Bitte warten ..
Mitglied: 60730
03.10.2011 um 01:34 Uhr
moin rubberman,

zum Thema eindampfen...
lieber zwei @ mehr sollte unnütze Zeilen sparen
und alles in einer Batch


01.
>"varmedia.m3u" (@for %%i in (%*) do @echo %%~i) 
02.
start "Start myVLC" /MIN /wait vlc.exe varmedia.m3u vlc://quit 
03.
shutdown -s -t 60

Gruß
Bitte warten ..
Mitglied: rubberman
03.10.2011 um 02:29 Uhr
Hallo T-Mo,

lieber zwei @ mehr
Das macht kaum einen Unterschied. Zum Aufhybschen muss dann doch das von dir verhasste @echo off herhalten

Der Grund für den 2. Batch sollte wohl darin liegen, dass das Konsolefenster ebenso minimiert sein sollte. Klar kann man das aber auch in einer Datei unterbringen.
Ebenso ungetestet:
01.
@echo off &setlocal 
02.
if %1_==_ goto :eof 
03.
if %1_==?_ ( 
04.
  start "" /MIN /wait vlc.exe varmedia.m3u vlc://quit 
05.
  shutdown -s -t 60 
06.
  goto :eof 
07.
08.
>"varmedia.m3u" (for %%i in (%*) do echo %%~i) 
09.
start "Start myVLC" /MIN cmd /c "%~f0" ?
Grüße
rubberman
Bitte warten ..
Mitglied: mc-doubleyou
03.10.2011 um 15:59 Uhr
Zitat von rubberman:
...
Der Grund für den 2. Batch sollte wohl darin liegen, dass das Konsolefenster ebenso minimiert sein sollte. ...

Jupp genau, da das Fenster ja offen bleibt soll es wenigstens nicht stören und klein sein

01.
if %1_==_ goto :eof 
02.
if %1_==?_ (
Wenn ich nur wüsste was das heißt, obwohl ich relativ viel bätche in letzter Zeit verstehe ich da genau 0

01.
>"varmedia.m3u" (for %%i in (%*) do echo %%~i) 
02.
start "Start myVLC" /MIN cmd /c "%~f0" ?
Warum genau wird das nun unten ausgeführt ohne varmedia.m3u geht doch gar nichts.
Achja und das Fragezeichen am Schluss sorgt für genau selbige bei mir.

Vielen Dank!

lg mc-dy
Bitte warten ..
Mitglied: rubberman
03.10.2011 um 16:22 Uhr
Hallo mc-doubleyou.

Ich versuchs mal zeilenweise.
-1 erkläre ich mal nicht, sollte denke ich klar sein
-2 wenn dem Batch kein Argument übergeben wurde, resultiert %1_ zu nichts als einem Unterstrich. In dem Fall soll der Batch beendet werden.
-3 Hier ist der Unterstrich auf beiden Seiten eigentlich nutzlos. How ever. Wird der Batch mit einem Fragezeichen als Argument aufgerufen, werden die Zeilen in den Klammern (4-6) ausgeführt, wobei Zeile 6 dafür sorgt, dass der Batch beendet wird und nicht weiterläuft. Das Fragezeichen habe ich gewählt, weil es zu den verbotenen Zeichen in Pfad und Dateinamen zählt.
- 4 und 5 ist klar, oder?
- 8 und 9 werden ausgeführt, wenn andere Argumente (Dateien) übergeben werden.
- 8 Die FOR Schleife läuft über alle übergebenen Argumente (in %*) , ordnet sie nacheinander der Laufvariablen %%i zu, und entfernt bei der ECHO Ausgabe umschließende Anführungszeichen durch die Tilde in %%~i.
- 9 Der Batch ruft sich selbst erneut auf, mit dem Fragezeichen als Argument. Somit werden im 2. Durchlauf die Zeilen 4-6 ausgeführt.

Soweit die Theorie. Ob es funktioniert, musst du selbst testen.

Grüße
rubberman
Bitte warten ..
Mitglied: mc-doubleyou
03.10.2011 um 16:49 Uhr
Hallo rubberman,

-2 wenn man die Batch also blank startet somit nichts übergibt hat %1 den Wert _ und beendet sich daher.
-3 wenn das ? kommt welches eigentlich nur dann kommt weil es sich die Batch selbst übergibt dann gehts in Zeile 4 los
-8 wird ausgeführt sobald jemand ein Drag and Drop durchführt. Hier wird dann all das gemacht was meine Batch ja auch macht.
-9 die Batch übergibt sich selbst das ? womit wir wieder bei -3 wären.

Stellt sich nur noch die Frage warum

01.
if %1_==?_ (
und nicht

01.
if %1==? (
Ich weiß du sagtest sinnlos aber irgend einen Grund musst du doch gehabt haben.

So sollte man dann auch mehr als 9 Dateien einlesen können oder?

Vielen Dank!

lg mc-dy
Bitte warten ..
Mitglied: rubberman
03.10.2011 um 17:01 Uhr
Hallo mc-doubleyou.

-2 wenn man die Batch also blank startet somit nichts übergibt hat %1 den Wert _ und beendet sich daher.
-3 wenn das ? kommt welches eigentlich nur dann kommt weil es sich die Batch selbst übergibt dann gehts in Zeile 4 los
-8 wird ausgeführt sobald jemand ein Drag and Drop durchführt. Hier wird dann all das gemacht was meine Batch ja auch macht.
-9 die Batch übergibt sich selbst das ? womit wir wieder bei -3 wären.
Ja.

Ich weiß du sagtest sinnlos aber irgend einen Grund musst du doch gehabt haben.
Nö, wirklich sinnlos. Schiebs mal darauf dass es schon spät (ähm früh) war.

So sollte man dann auch mehr als 9 Dateien einlesen können oder?
Ja, aber nicht endlos viele. %* wird in der FOR Schleife expandiert und verlängert somit die Zeile, deren Maximallänge aber begrenzt ist.
support.microsoft.com/kb/830473/de

Grüße
rubberman
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Batch & Shell
Backup Script Optimierung und MSSQL (4)

Frage von TommyB83 zum Thema Batch & Shell ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Batch & Shell
Script zum Auflösen einer Ordnerstruktur und zurück gesucht (12)

Frage von websolutions zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (17)

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

Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...