簡體   English   中英

在Windows計算機上的共享安裝的硬盤驅動器上找不到Perl腳本

[英]Perl script not found when on a shared mounted hard drive located on a Windows computer

我正在研究Linux Mint 17.1 Rebecca 64位。

我有一個簡單的Perl腳本,名為test.pl:

#!/usr/bin/perl

print "Hello\n" ;

權限為-rwxr-xr-x

我的PATH變量是: /mnt/USERS/user1/:/home/myLogin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

當此腳本位於我的用戶bin目錄/ home / myLogin / bin中時,可以通過以下簡單方法在bin目錄之外啟動它:

test.pl

命令 :

which test.pl

返回

/home/myLogin/bin/test.pl

好像還可以

在我的Linux上,我安裝了一個共享Windows硬盤驅動器,該驅動器位於本地網絡中的某個位置。 如果我將此腳本移至/ mnt / USERS / user1 /上Windows安裝的硬盤驅動器,即使/ mnt / USERS / user1 /在$ PATH變量中,也無法再運行它。 系統回答“找不到命令”。 如果我使用cd命令轉到此目錄,則無法通過簡單的方式啟動腳本:

test.pl

錯誤是“找不到命令”。

如果我嘗試:

./test.pl

該錯誤現在為“權限被拒絕”

如果我嘗試:

perl test.pl

它工作正常...怎么了??? 謝謝

錯誤是“找不到命令”。

當您鍵入沒有明確路徑的命令時(不同於./test.pl ),您的外殼程序將搜索$PATH列出的目錄。 它通常不包括./ (當前目錄),因此找不到腳本。

該錯誤現在為“權限被拒絕”

當您嘗試直接執行腳本時(與執行perl並將腳本的位置作為參數傳遞給它相反),文件許可權必須允許執行。

Windows文件權限與UNIX文件權限不同,並且在類似UNIX的系統上安裝的Windows格式化磁盤通常具有硬編碼(在mount命令中)文件權限。 這些不包括您要執行的文件的執行權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM