36 lines
3.0 KiB
Plaintext
36 lines
3.0 KiB
Plaintext
====== Les orphelins du wiki ======
|
|
{{tag>"site"}}
|
|
{{ :journal_geek:2023:page_website_orphelin_draw_088ea1f8-75ac-44af-81e5-82103791a8c3.png?300x|On traque les pages orphelines du site.}}
|
|
|
|
Une page orpheline est une page Web qui n'est pas reliée à d'autres pages du site Web. Cela signifie que personne ne peut accéder à la page en suivant un lien depuis une autre page du site. Les pages orphelines sont généralement le résultat de liens cassés ou d'un mauvais renommage de pages. Elles peuvent être un problème pour le site Web car elles peuvent rendre difficile pour les visiteurs de trouver le contenu du site et peuvent également affecter négativement le référencement du site dans les moteurs de recherche. Au moment de la rédaction de cet article, il y a **536** pages orphelines. C'est énorme et il faut corriger cela.
|
|
|
|
Comment ai-je identifier les 536 pages ?
|
|
|
|
Il y a un moment, j'ai modifié le nom de la page d'accueil des espace de noms (namespace). J'ai changé la la valeur de ''start'' à la valeur ''index''. Malheureusement, toutes les pages déjà créées n'ont pas été renommées automatiquement. J'ai corrigé cela en exécutant les commande suivantes. Dans un premier temps, après mettre rendu dans le dossier de travail, j'ai généré un fichier ''run.sh''. La génération du fichier s'appuie sur la commande ''find''.
|
|
|
|
Le commande ''find'' parcourt récursivement les fichiers et répertoire à partir du répertoire courant (indiqué par .). La option ''-name'' spécifie un modèle de nom de fichier à rechercher, dans ce cas il s'agit de ''start.txt''. L'option ''-exec'' exécute une commande pour chaque fichier trouvé.
|
|
|
|
La commande exécutée par ''-exec'' est ''sh -c 'echo mv -v "$1" "${1/start/index}" >> run.sh' _ {} \;''. Cette commande utilise la commande ''echo'' pour afficher la sortie à l'écran, et ''>>'' pour rediriger cette sortie vers le fichier ''run.sh''. La commande ''mv'' déplace ou renomme un fichier. La option ''-v'' permet d'afficher le nom des fichiers avant et après le déplacement/renommage.
|
|
|
|
La commande ''mv'' prend deux arguments : le nom du fichier à déplacer/renommer et le nouveau nom du fichier. Le nouveau nom du fichier est obtenu en utilisant l'expression ''${1/start/index}'', qui remplace la chaîne "start" par "index" dans la première variable d'argument (''$1'').
|
|
|
|
**En résumé**, cette commande cherche tous les fichiers nommés ''start.txt'' dans le répertoire courant et sous-répertoires, et génère une commande ''mv'' pour renommer chaque fichier trouvé en remplaçant "start" par "index" dans le nom du fichier. Ces commandes ''mv'' sont affichées à l'écran et enregistrées dans le fichier ''run.sh''.
|
|
|
|
<code>
|
|
cd /var/www
|
|
find . -name 'start.txt' -exec sh -c 'echo mv -v "$1" "${1/start/index}" >> run.sh' _ {} \;
|
|
</code>
|
|
|
|
Une fois que j'ai vérifié le contenu de ''run.sh'', je l'exécute en utilisant la commande :
|
|
|
|
<code>
|
|
bash run.sh
|
|
</code>
|
|
|
|
|
|
|
|
|
|
--- //[[user:cedricabonnel]] Édition initiale du Sunday 8 January 2023 //
|
|
|
|
Crédit image : //Midjourney//
|