【发布时间】:2016-04-05 07:43:35
【问题描述】:
我正在尝试使用 Perl 获取当前工作目录路径
当我从 ubuntu 执行时:$root@ubuntu:/var/test/geek# firefox http:/localhost/test.html,我得到 /var/cgi-bin 作为 perl cgi 页面中的输出而不是 /var/测试/极客。
使用的 perl 代码:
my $pwd=cwd();
bla bla
print "<h1> pwd </h1>";
上面的代码给出了 test.pl 的路径而不是用户的工作目录路径
编辑:当我从终端单独运行脚本时,它工作正常。例如:
$root@ubuntu:/var/test/geek# /var/cgi-bin/test.pl
我得到 /var/test/geek。但是当我使用提交按钮在 html 页面中调用脚本时,它会给出 perl 脚本的路径。
【问题讨论】:
-
您一直在自找麻烦,一直在使用 root。您真的应该以非特权用户的身份进行开发工作,并为您需要的特权命令配置 sudo。
-
你无法获取用户系统上的当前工作目录,因为你没有运行在用户系统上;你在你的网络服务器上运行。请准确解释您认为需要这样做的原因。
标签: perl