IPB

Willkommen, Gast ( Anmelden | Registrierung )

2 Seiten V   1 2 >  
Reply to this topicStart new topic
> MS-DOS-Konsole mit (perl scriptname.pl) aufrufen?
Gast_domselll_*
Beitrag 02.07.2002 - 11:32
Beitrag #1





Gäste






Hallo,

1.
Liege ich richtig, das Proton keinen eigenen Debugmodus hat, wie z.B. PerlBuilder?
Und man quasi in der Konsole debugt?

2.
Und, wenn man in Proton ein Script editiert und die MS-DOS-Konsole (unter Windows) in Proton
aufruft, steht ja schon der Pfad zum Script drinne, aber kann man nicht auch gleich die
MS-DOS-Konsole mit (perl scriptname.pl) aufrufen, so dass der Dateiname und Aufruf von Perl nicht
von Hand gemacht werden muss?

Kann ich unter Programmeinstellunegn/Shell dazu in dieser Art etwas verändern, kenne mich damit überhaupt nicht aus?


Viele Grüsse
Thomas N
Go to the top of the page
 
+Quote Post
Gast_Bernd Wurst_*
Beitrag 02.07.2002 - 11:37
Beitrag #2





Gäste






Hallo Thomas,

du musst einsehen, Proton ist ein Editor, kein Perl-Entwicklungs-Programm.
Also zu 1): Nein, Proton hat sowas nicht

Zu 2): Proton ist dafür wie gemacht!
chau dir die Shortcuts mal näher an, die sind genau dafür da. Erst musst du in den Programmeinstellungen Den richtigen Befehlsinterpreter setzen, wenn du ein NT-System verwendest solltest du command.com durch cmd.exe ersetzen.

Dann kannst du unter Shortcuts -> Shortcuts definieren eigene Programmaufrufe eingeben mit dem aktuellen Dateiname als Parameter. Die Parameter sind dort erklärt. Wenn du mit der Kommandozeile umgehen kannst, wirst du das auch schaffen. wink.gif

Ansonsten frag nochmal.

cu, Bernd
Go to the top of the page
 
+Quote Post
Gast_domselll_*
Beitrag 02.07.2002 - 14:01
Beitrag #3





Gäste






Hallo Bernd,

ich habe win95 und stehe mit Programmierung eher am Anfang.

Soll ich alle command.com durch "cmd.exe" ersetzen? Oder nur im "Konsolenfenster-Öffnen-Feld"?

Wenn ich unter Shortcuts -> Shortcuts definieren eigene Programmaufrufe den aktuellen Dateiname als Parameter eingeben muss, ist das nicht GENAU was ich suche. aber schon mal nah dran. :-) Ich dachte vielleicht geht das "dynamisch", verstehtst Du? Das war jetzt so ein typischer DAU-Kommentar, oder? wink.gif

Aber wie geht das nun genau?
Bei einem Versuch startete meine Konsole wie folgt, hat also noch nicht ganz geklappt:

Dateiname

E:softwareProtonproton31deproton31de>



Über eine Antwort würde ich mich nochmals sehr freuen!
Thomas N
Go to the top of the page
 
+Quote Post
Gast_Bernd Wurst_*
Beitrag 02.07.2002 - 15:00
Beitrag #4





Gäste






ZITAT
ich habe win95 [...]Soll ich alle command.com durch "cmd.exe" ersetzen? Oder nur im "Konsolenfenster-Öffnen-Feld"?

Win 95 != Win NT
d.h. lass command.com überall drin stehen.
Win 95 / 98 / ME basieren auf MSDOS, da gibt es die Command.com
WIn NT / 2000 / XP haben kein DOS. Dort muss es emuliert werden. Das macht die cmd.exe.

Aber wenn du Win95 hast, lass es wie es ist. wink.gif
ZITAT
Ich dachte vielleicht geht das "dynamisch", verstehtst Du? Das war jetzt so ein typischer DAU-Kommentar, oder? wink.gif

Zumindest nah dran. wink.gif *SCNR*

Aktueller Dateiname heisst nämich der, den du grade im Editor bearbeitest. Geh mal in das Dialogfeld und schau dir den Hilfstext an. Da steht zum Beispiel: %P% = Pfad, %D% = Dateiname ohne Endung

Du schreibst also in den Shortcut als Kommandozeile
perl %A%
(%A% heisst Dateiname mit Pfad und Endung)

Wenn du wisst, dass das Fenster danach offen bleibt, musst du dir eine Batchdatei schreiben. wink.gif)

Eventuell musst du den kompletten Pfad zur perl.exe eintragen. Dann gibst du dem Ganzen einen Namen und kannst es über die angezeigte Tastenkombination oder über das Shortcut-Menü starten.

Hoffe dass dir das etwas weiterhilft.

cu, Bernd
Go to the top of the page
 
+Quote Post
Gast_domselll_*
Beitrag 02.07.2002 - 16:26
Beitrag #5





Gäste






Hallo Bernd,

ZITAT
Win 95 != Win NT
d.h. lass command.com überall drin stehen.
Win 95 / 98 / ME basieren auf MSDOS, da gibt es die Command.com
WIn NT / 2000 / XP haben kein DOS. Dort muss es emuliert werden. Das macht die cmd.exe.
Aber wenn du Win95 hast, lass es wie es ist. icon_wink.gif
Bis hier hin warst Du vorzüglich im Erklären! Alle achtung!


Ab hier hast Du etwas nachgelassen.
ZITAT
Geh mal in das Dialogfeld und schau dir den Hilfstext an. Da steht zum Beispiel: %P% = Pfad, %D% = Dateiname ohne Endung
Du schreibst also in den Shortcut als Kommandozeile
perl %A%
(%A% heisst Dateiname mit Pfad und Endung)



Und dann wird es verwirrend. :-(
ZITAT
Wenn das Fenster danach offen bleibt, musst du dir eine Batchdatei schreiben. icon_wink.gif)



Soweit bin ich gekommen, das spuckt die Konsole aus, wenn ich meinen Shortcut nutze:
__________________________________________
Angegebenes COMMAND-Verzeichnis ist falsch
Zu viele Parameter

Microsoft® Windows 95
©Copyright Microsoft Corp 1981-1996.

D:programme3perl_5.6.1bin>
__________________________________________

Meine Pfade:
Hier liegt die Datei ha1.pl
E:uebenplha1>

Der Pfad zu perl:
D:programme3perl_5.6.1bin>


%P% = Pfad, %D% = Dateiname ohne Endung
Was ich mit diesen Hieroglyphen anfangen soll, "Variablen der geöffneten Datei" steht da im ShortcutDialog,
von Hilfstext ist ja weit und breit keine Spur? Was hast Du Dir dabei gedacht Bernd? wink.gif

Also, ich schreibe z.B. in die Kommando-(Shortcut)-Zeile:
command.com perl E:uebenplha1> 15702_1.pl
oder
command.com E:uebenplha1>perl 15702_1.pl

Es kommt aber nur obige Fehlermeldung "Zu viele Parameter", wenn ich "command.com" weglasse geht gar nichts.

Wenn ich dieses eingebe:
perl ha1.pl
dann blitzt kurz die Konsole auf, aber ich hab mal einen Screenshot gemacht - war gar nicht so einfach -
da stand dann: Can't exec usr/bin/cgi-bin/ at ha1.pl at line1.
Da meckert er über die Shebang-Zeile, oder?

Berd, was nun?

Thomas
Was soll ich da reinschreiben?


und hier der ScreenshotSchnappschuss!
:-)
Go to the top of the page
 
+Quote Post
Gast_Bernd Wurst_*
Beitrag 02.07.2002 - 16:46
Beitrag #6





Gäste






Hallo domselll,

habe ich dich verwirrt? Sorry. wink.gif

ZITAT
Wenn das Fenster danach offen bleibt, musst du dir eine Batchdatei schreiben.
Zugegeben, dieser Satz war zur Verwirrung gedacht. Aber okay, ich erklär's unten.

Erstmal: Du gibt deine Pfade immer mit einem > am Ende an, ich hoffe, das tust du nicht auch in den Eingabefeldern, denn das Zeichen gehört nicht zum Pfad.

ZITAT
%P% = Pfad, %D% = Dateiname ohne Endung
Was ich mit diesen Hieroglyphen anfangen soll, "Variablen der geöffneten Datei" steht da im ShortcutDialog,
von Hilfstext ist ja weit und breit keine Spur? Was hast Du Dir dabei gedacht Bernd?

Naja, ich sehe das als Hilfstext an, denn dort werden die verfügbaren Variablen erklärt. (Ich nenne es erklärt).

ZITAT
Wenn ich dieses eingebe:
perl ha1.pl
dann blitzt kurz die Konsole auf,

Das war richtig. Denn da hat sich ja schon dein Perl gemeldet! Und es hat versucht dein Script zu parsen.

Also gibst du jetzt nicht
perl ha1.pl
sondern
perl %A%
an und Proton macht daraus dann automatisch beim Aufruf ein
perl E:uebenplha1ha1.pl
wenn die Datei im Editor geladen ist.

Soweit die Funktion von Variablen Verstanden?

Du hast jetzt nur noch das Problem, dass das Fenster nur kurz aufblitzt und danach wieder weg ist. Dazu folgendes:

Erstelle eine neue Datei mit folgendem Inhalt:
QUELLTEXT
cd %1
D:programme3perl_5.6.1binperl.exe %2
echo.
pause

Diese Datei speicherst du z.B. unter e:uebenplpl_exec.bat.
(Da du Windows 95 hast, musst du die Datei auf dem Laufwerk starten, wo deine pl-Datei liegt, sonst bekommst du Probleme.)

Dann trägst du in Proton bei einem Shortcut deines Vertrauens folgende Kommandozeile ein:
e:uebenplpl_exec.bat %P% %A%
(Verstehst du die Verwendung der Variablen?)

So, das war jetzt alles aus dem Kopf, ich hoffe ich hab keinen Fehler gemacht. Leider muss ich jetzt los, versuch's einfach mal, ob es jetzt funktioniert.

cu, Bernd
Go to the top of the page
 
+Quote Post
Gast_domselll_*
Beitrag 02.07.2002 - 19:59
Beitrag #7





Gäste






Hallo Bernd,

funktioniert hat es, ganz klar ist mir die Sache noch nicht, aber das wird schon. :-)




Ist das richtig? Dann hab ich weinigstens die Kurzbezeichnung der Variablen kapiert:
%DX% = %F%
%PDX% = %A%

Also vielen Dank für die Erklärunegen Du hast Dir grosse Mühe gegeben aber immer drandenken, nicht zu selbstbezogen-verwirrend darstellen! wink.gif

Thomas
Go to the top of the page
 
+Quote Post
Gast_Bernd Wurst_*
Beitrag 02.07.2002 - 20:15
Beitrag #8





Gäste






Hi,

ja, das ist richtig. (Variablen)

mach vor die erste Zeile der Batchdatei noch eine zusätzliche Zeile
QUELLTEXT
@echo off


PS: Zur Selbstbezogenheit:
Ich weiss um die Problematik, ich supporte in mehreren Foren. Nur da es hier um den Editor geht, sind die Grundkenntnisse was die Kommandozeile und das aufzurufende Perl angeht nicht definiert, das heisst ich versuche erstmal davon auszugehen, der Betroffene kann mehr, dann muss ich weniger erklären. Wenn derjenige das dann nicht ganz versteht, kann ich ja deutlicher werden.

Frustierend ist es, wenn ich mir die Finger wund schreibe und nachher kommt ein kurzes "Ja, das wusste ich, ich hab mich nur da und dort vertippt...". Das muss nicht sein.

Ich hoffe du kannst das nachvollziehen. Und da es jetzt funktioniert sind wir ja letztendlich auch am Ziel angekommen. wink.gif

cu, Bernd
Go to the top of the page
 
+Quote Post
Gast_domselll_*
Beitrag 03.07.2002 - 11:02
Beitrag #9





Gäste






Hallo Bernd,

funktioniert wunderbar!
So sieht also meine/unsere wink.gif komplette Batchdatei nun aus:

QUELLTEXT
@echo off
cd %1
D:programme3perl_5.6.1binperl.exe %2
echo.
pause


Frage:
Mit dem "@echo off" werden die Ausgaben der Pfade usw. in der Konsole unterbunden, richtig?
Aber wozu das "echo." am Ende?

Du brauchst Dir nicht die Finger wund schreiben und nachher kommt bestimmt auch kein kurzes:
"Ja, das wusste ich schon, hab mich nur da und dort vertippt...". wink.gif

Grüsse
Thomas
Go to the top of the page
 
+Quote Post
Gast_Bernd Wurst_*
Beitrag 03.07.2002 - 13:09
Beitrag #10





Gäste






Hallo,

jetzt hatte ich so einen langen Beitrag geschrieben und konnte den nicht abschicken weil das Board down war. :-(

Auf ein neues:

Das @ vor einer Zeile bewirkt, dass diese vor dem Ausführen nicht erst angezeigt wird.
Mit echo off schaltet man das für den Rest der Batchdatei ab.

Mit cd %1 wechselt man in das Verzeichnis , das als erster Parameter an die Batchdatei übergeben wurde (%P% in Proton).
Das wäre wahscheinlich nicht unbedingt nötig, aber schaden tut in jedem Falle nicht.

Dan wird den Perl aufgerufen, als Parameter wird %2 weitergegeben, also der 2. Parameter der Batchdatei.

Das echo. macht einfach nur eine Leerzeile.
Mittels echo Text kann man den Text Text ausgeben, deshalb darf bei echo. kein Leerzeichen zwischen dem echo und dem Punkt sein.

pause zeit den Text an "Weiter mit beliebiger Taste..." und wartet dann auf einen Tastendruck. d.h. dein Fenster verschwindet sobald du eine Taste drückst.

so, ich hoffe ich hab's verständlich erklärt. wink.gif

cu, Bernd
Go to the top of the page
 
+Quote Post
Google Bot
Beitrag
Beitrag #


Google Ads









Go to the top of the page
 
Quote Post

2 Seiten V   1 2 >
Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 25.04.2024 - 7:46

taschenkalender
expertise-panel IPS Driver Error

IPS Driver Error

There appears to be an error with the database.
You can try to refresh the page by clicking here