Script shell

script

Cette page a été écrite pour FreeBSD. La plupart des exemples devraient être utilisables sous Linux et Cygwin également.

Pourquoi

Eh bien, qui va s’embêter avec les scripts shell de nos jours, hein ? Il n’y a que moi ? Peut-être bien.
Mais plus j’apprends sur les scripts shell, plus je m’amuse avec.
C’est simple, assez rapide, assez puissant pour de nombreuses tâches, y compris pour les CGI !
C’est l’un des langages de script CGI les plus légers, et très facile à utiliser.

En plus de cela, vous pouvez gérer votre machine et votre site web avec un script shell très facilement !

Comment

Utiliser un script shell est facile … sur le serveur web (Linux, FreeBSD, etc),
ou sur votre machine avec Cygwin.
(Cygwin vous permet d’utiliser les commandes populaires d’Unix sur une machine Windows).

Tout d’abord, nous allons voir l’exemple d’un CGI très simple.

Pour utiliser un script shell comme un CGI, vous devez commencer le fichier avec ces deux lignes.

#!/bin/sh
echo -e "Content-type: text/html\n"

Et ensuite, mettez la permission du fichier à 700 (sur le serveur avec SuExec, comme PowWeb),
avec FTP, WebFTP, sitemanager, etc. (Utilisez 755 si le CGI fonctionne en tant que nobody)

Pour afficher les textes et les codes html, utilisez « echo ».

#!/bin/sh
echo -e "Content-type: text/html\n"

echo ‘

Title

Text here.

# END
# Any line starting with ‘#’ is a comment and ignored.

Ensuite, pour inclure n’importe quel fichier, vous utilisez « cat ».

# include a file in the same directory
cat header.html

# include a file in te subdirectory of current directory
cat inc/footer.html

# Or use absolute path. (It can be any file extension.)
cat /www/U/USER/htdocs/template/toppage.tpl

Les deux combinés, vous pouvez faire comme ceci.

#!/bin/sh
echo -e "Content-type: text/html\n"

# include header part
cat header.html

# output some text (between quotes)
echo ‘


Here is a simple dynamic page
served by shellscript!

# include footer part from ‘inc’ directory
cat inc/footer.html

# END

les pages shellscript peuvent être plus propres que SSI, PHP, ou Perl,
et suffisamment simples et puissantes pour de nombreuses tâches !

En outre, il utilise beaucoup moins de ressources que PHP ou Perl
et se chargent donc assez rapidement !
La différence sera encore plus grande lorsque le serveur commencera à souffrir d’une charge plus importante.
Alors qu’une page shellscript peut réussir à se charger, la version php peut perdre du temps.

Comme elles utilisent moins de ressources, les pages shellscript sont moins vulnérables
lorsque vous recevez des demandes massives de moteurs de recherche, de robots, d’attaquants, etc.

En plus de cela, les compétences et les connaissances acquises avec les pages shellscript
sont très utiles pour la gestion des sites et l’administration des systèmes.
Elles peuvent également être utilisées en Perl et dans d’autres langages.

Plus d’exemples simples à venir …..

Dans la programmation du script shell, si vous faites des choses avec une commande interne, cela utilisera moins de ressources et s’exécutera plus rapidement.
Donc, j’ai pensé à comment faire les choses SANS utiliser de commande externe comme test (ou [ ] ), expre, sed, et ainsi de suite.

En fait, la plupart des tâches simples et courantes peuvent être effectuées uniquement avec des commandes internes.

Note : Ces commandes sont basées sur FreeBSD /bin/sh. Veuillez lire le manuel !
Si vous utilisez l’interpréteur de commandes bash de Linux ou cygwin, vous disposez de plus de commandes internes.
(avec le prix d’une plus grande utilisation des ressources …)
En outre, bash fait les choses un peu différemment.

Pour ceux qui sont intéressés à savoir jusqu’où nous pouvons aller pour minimiser les choses, il existe un sous-ensemble de shell ENTIEREMENT écrit en assembleur x86.

Tuto vidéo


Une réponse à “Script shell”

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *