Comment faire pour exécuter un script perl à partir de n'importe où (n'importe quel répertoire)
J'ai un script perl qui existent dans la forme suivante chemin (/home/Leen/Desktop/Tools/bin/tool.pl)
Chaque fois que je veux utiliser cet outil, je vais à la borne
>
puis modifiez le répertoire
..../bin>
Puis-je exécuter le perl par écrit
..../bin> perl tool.pl file= whatever config= whatever
Le problème est que je veux exécuter ce script perl sans avoir besoin d'aller dans le dossier bin là où il existe . donc, je peux utiliser le script perl à partir de n'importe quel répertoire et dès que j'entre dans la coquille
Je suis allé à l'etc/environment et j'ai écrit la suivante
exportation PERL5LIB=$PERL5LIB:/home/Leen/Desktop/Tools/bin
Mais quand je vais à la borne et écrire la suivante en ligne droite sans va bin où tool.pl existe
>perl tool.pl file=... config=...
il dit que le fichier "tool.pl" n'existe pas???
OriginalL'auteur Wahedsaw | 2012-09-15
Vous devez vous connecter pour publier un commentaire.
Le premier argument de la
perl
programme est le chemin d'accès à un fichier exécutable. Ces appels sont équivalentes:etc.
Dans le shell le tilde
~
se développe dans votre répertoire home, et./
symbolise le répertoire courant. Sur *nix coquilles (y compris les différents émulateurs de terminal sur ubuntu), l'invite de commande en général est$
dans nomal mode,#
en tant qu'utilisateur root et rarement%
.>
Est secondaire invite de commande, par exemple, en cas de poursuite d'une multiligne argument, contrairement à cmd.exe sur Windows.La
PERL5LIB
variable détermine l'endroit où Perl recherche des modules, pas pour les fichiers exécutables.Vous pouvez définir un script exécutable via
chmod +x FILENAME
. Vous pouvez ensuite appeler le script, sans préciser laperl
programme:Vous pouvez modifier le
PATH
variable pour modifier l'emplacement de la coquille de recherche des fichiers exécutables. LePATH
contient généralement/usr/bin/
et dans d'autres répertoires. Vous pouvez ajouter un répertoire de votre propre viaAjouter à votre répertoire à la fin de la
PATH
es, afin de ne pas renverser d'autres programmes.Si vous voulez régler ce de façon permanente, vous pouvez ajouter cette ligne au fichier
~/.bashrc
(uniquement pour votre nom d'utilisateur et uniquement pour lebash
shell).Ensuite, vous pouvez appeler votre script à partir de n'importe où, sans un nom de chemin complet:
Vous devriez envisager d'utiliser un plus spécifique, le nom de la commande dans ce cas, afin d'éviter les collisions de noms.
Je suis allé à l'environnement de fichier et j'ai trouvé le suivant [ PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" ] dois-je Donc compléter la liste par écrit à la fin [:/home/Leen/Desktop/Tools/bin] de sorte que le CHEMIN sera [PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/Leen/Desktop/Tools/bin"] ou dois-je l'écrire comme suit [PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" $ PATH=$PATH:/home/Leen/Desktop/Tools/bin]. Merci beaucoup monsieur.
chmod +x FILENAME
est une commande shell. Donc tapez dans le terminal, ou de modifier les autorisations dans un gestionnaire de fichiers, par exemple Nautilus. Vous devez être dans le répertoire de latool.pl
, maisFILENAME
peut être aucun chemin d'accès à un fichier. Si vous avez besoin d'informations sur une commande dans votre coquille, vous pouvez taperinfo COMMAND
(ouhelp COMMAND
dans le cas de built-ins).COMMAND --help
travaille souvent ainsi.Il serait probablement mieux pour ajouter une nouvelle ligne à la fin de la
~/.bashrc
et d'écrire un commentaire expliquant votre modification, de sorte que vous pouvez revenir en cas de besoin.Monsieur, je suis allé à la borne, puis dans le répertoire où bin existent et écrit
chmod +x tool.pl
mais quand j'ai essayer cette:~/Desktop/Tools/bin$ tool.pl
il dittool.pl: command not found
Il ne reconnaît pas que c'est un fichier exécutable!! s'il vous plaît aider !OriginalL'auteur amon