Essayez :
#!/usr/bin/perl
# This is a comment ~~~
# This script will be run as a Perl script
# since 'perl' isn't a keyword or function in Perl
# something like this must fail:
#
# perl -e 'print "Hello";'
#
# The following should work.
print "Hello"; print " World\n";
Ou, si vous voulez que votre script shell exécute du code Perl :
#!/bin/sh
# That's a Bash script ~~~
# It's just a command line in a file ...
perl -e 'print "Hello World";'
Arrière-plan :#!
est une directive d'interprétation.
Lorsque la commande est exécutée, elle est convertie en une exécution de l'interpréteur.
perl
n'est pas une commande valide dans un script Perl. Si vous aviez nommé ce fichier en tant que script .sh et utilisé #!/bin/bash
sur la ligne shebang, cela aurait fonctionné, mais cela n'a pas vraiment de sens d'écrire un fichier bash juste pour invoquer Perl (pourquoi ne pas invoquer directement Perl ?)
Puisque vous avez mentionné que vous voulez interagir avec la ligne de commande, je mentionnerai ici que vous pouvez accéder aux options de ligne de commande dans Perl via le @ARGV
déployer. (Voir perldoc perlvar.)