webForumDet fria alternativet

kolla varifrån skriptet körs?

Perl & Ruby

9 svar · 672 visningar · startad av higa

Medlem sedan aug. 2000359 inlägg
Frågan#1

Hur gör man i Perl för att se varifrån skriptet körs (t ex d:\program\tools\)

Medlem sedan maj 20031 472 inlägg
#2

$ENV{'SCRIPT_FILENAME'}

Ett tips för att kolla alla ENV värden är ju att köra detta script

#!/usr/bin/perl

print "Content-type: text/html\n\n";
foreach $key (sort(keys %ENV)) {
  print $key, '=', $ENV{$key}, "<br>\n";
}
Medlem sedan juni 20004 308 inlägg
#3

Eller så använder du findbin. Fungerar även om du kör scriptet löst och inte i CGI-miljö.

Medlem sedan maj 20031 472 inlägg
#4

Det gör ENV också

/r i linux iaf

Medlem sedan juni 20004 308 inlägg
#5

Har du kört scriptet i shell då? Perl för Win32 sätter inte upp några extra enviroment variabler.

Medlem sedan maj 20031 472 inlägg
#6

Jag kom på det efteråt att det troligen inte funkar i win32, men då brukar ju folk köra asp.

Eller är det bara en fördom?

Medlem sedan juni 20004 308 inlägg
#7

Det är nog ingen fördom, för det brukar "dom" :). Men nu har jag testat på en debian linux dist, och där fanns det inte heller. Där har du istället variabeln PWD. Tror fortfarande att du testat i en CGI-miljö...

Medlem sedan maj 20031 472 inlägg
#8

Glöm det hela jag tänkte fel..

Medlem sedan aug. 2000359 inlägg
#9

Tack Jojoxx, nu funkar det som det ska!

Scriptet är för övrigt inte cgi utan körs från kommandoraden. Tycker att det känns rätt smidigt att kunna använda samma språk för cgi som för cmd, är väl därför jag håller mig till Perl :)

Medlem sedan juni 20004 308 inlägg
#10

Ja, Perl är guld! :)

261 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)