Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Syntexfehler bei Abfrage - Pfad der rars falsch

Frage Entwicklung Batch & Shell

Mitglied: Loip104

Loip104 (Level 1) - Jetzt verbinden

15.03.2011 um 16:06 Uhr, 2315 Aufrufe, 1 Kommentar

Hy ich habe in einem anderen Thread bereits ein ähnliches //bzw das selbe script erfragt/hilfebekommen.
Nun wollte ichdas ganze etwas Flxibler gestalten und die Parameter von hand eingeben lassen

Dies Funktioniert soweit auchganzgut.
Nur bekomme ich einen syntexfehler
Dessen ursache mir nicht ganz klar ist

Momentan tuht es :

Vorher

C:\xvid\Ordnerabc\Datein
C:\xvid\Ordnerbc\Datein
C:\xvid\Ordnerac\Datein

Nacher

C:\xvid\Ordnerabc\"leer"
C:\xvid\Ordnerbc\"leer"
C:\xvid\Ordnerac\"leer"
C:\xvid\keinName.rar
C:\xvid\KeinName.rar
C:\xvid\KeinName.rar


Soll aber:

Vorher

C:\xvid\Ordnerabc\Datein
C:\xvid\Ordnerbc\Datein
C:\xvid\Ordnerac\Datein

Nacher

C:\xvid\Ordnerabc\Ordnerabc.rar
C:\xvid\Ordnerbc\Ordnerbc.rar
C:\xvid\Ordnerac\Ordnerac.rar



Meine Batch sieht momentan so aus:

@echo ON
echo .....
echo .....
echo Bitte Pfad eingeben
echo Beispiel :"D:\xvid"

set /p Basis=Bitte Pfad Eingeben :
set "Ziel=%Basis%"
echo .....
echo .....
echo .....
echo a = 101mb
echo b = 251mb
echo c = 501mb
echo d = 1024mb(1gb)
echo e = 2048mb(2GB)

set /p wahl1= a bis e:
if %wahl1%==a set "%Grose%=103424"
if %wahl1%==b set "%Grose%=257024"
if %wahl1%==c set "%Grose%=513024"
if %wahl1%==d set "%Grose%=1048576"
if %wahl1%==e set "%Grose%=2097152"
echo .....
echo .....
echo .....


set "Prog=d:\rar.exe"
set /p wahl2=Files nach packen löschen 1=ja / 2=nein:
if %wahl2%==1 set "%par1%= -df"
if %wahl2%==2 set "%par1%= "
set "Prog=d:\rar.exe"

for /d %%i in ("%Basis%\*.*") do (


"%Prog%" a -r%par1% -ag-H-M-S -v%Grose%k -m0 "%Ziel%\%%~nxi\%%~nxi" "%%i\*.*"

)

PAUSE




den Syntexfehler bekomme ich hier
http://s7.directupload.net/images/110315/u57bsgoe.png

Hoffe ihr könnt mir helfen
Thx schon mal an alle

MFG
Mitglied: mathe172
15.03.2011 um 17:12 Uhr
Hallo,

Schau mal das hier an: http://www.administrator.de/helpsystem/detail.php?idx=20#toc28. So bekommst du mehr Antworten und man kanns besser lesen...
Bei if-Abfragen macht man in Batchi IMMER (bei Stringvergleichen) ein Zeichen jeweils vor die zu vergleichenden Sachen
Also:
01.
If "%String1%"=="%String2%" echo.OK 
02.
::Oder 
03.
If "%String1%"=="Text" echo.OK 
04.
::Oder 
05.
If Test%String1%==TestText echo.OK
Wichtig ist nur, dass auf beiden Seiten des == etwas steht, auch wenn die Variable leer ist.

Das 2.:
01.
set "%par1%=Test"
Das setzt die Variable mit dem Namen der dem Inhalt von %par1% entspricht-in deinem Fall "" (nichts)-->Die % in set-Anweisungen fast nie benutzen
Beispiel:
01.
set "Var=Text1" 
02.
set "%Var%=Text2" 
03.
echo %Var% 
04.
::Die zweite Variable heisst Text1 
05.
echo %Text1%
Mathe172
PS.: Gib mal das in der Dos-Box ein:
(echo.oe:ö 
echo.ae:ä 
echo.ue:ü 
echo.Und mehr)>>Desktop\Sonderzeichen.txt
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Win-Batch - warum wird falscher Pfad übergeben (4)

Frage von jan999 zum Thema Batch & Shell ...

Batch & Shell
Leerzeichen im Pfad (4)

Frage von Jallio zum Thema Batch & Shell ...

Datenbanken
gelöst MySQL Abfrage um JOIN erweitern (14)

Frage von datadexx zum Thema Datenbanken ...

Monitoring
Abfrage Netzwerkdruckerstatus (13)

Frage von phil905 zum Thema Monitoring ...

Neue Wissensbeiträge
Sicherheit

Eventuell neue Lücke in Intels ME

Information von sabines zum Thema Sicherheit ...

Viren und Trojaner

FinFisher: Internetprovider schieben Spitzelopfern Malware unter

(1)

Information von kaiand1 zum Thema Viren und Trojaner ...

Humor (lol)

Wo ist der Fehler auf dem Bild?

(17)

Information von the-buccaneer zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Lizenzierung
Programm soll in verschiedenen Versionen lizenziert sein (20)

Frage von Yanmai zum Thema Lizenzierung ...

Humor (lol)
Wo ist der Fehler auf dem Bild? (17)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Userverwaltung
Ordner-Rechte für Dom.Admin einschränken? (13)

Frage von kilobyte zum Thema Windows Userverwaltung ...