LinuxAlternative

Linux · Programmation

Ksh

KornShell (ksh) est un shell Unix qui combine les fonctionnalités de sh, csh et awk pour l'écriture de scripts et l'utilisation interactive.

Open sourceGratuit
Soyez le premier à noter
Licence
GPL-3.0
Dernière version
1.0.10

Qu’est-ce que Ksh ?

KornShell, développé par David Korn au début des années 1980, a été conçu pour améliorer le shell Bourne en ajoutant des fonctionnalités telles que les tableaux, l'arithmétique intégrée et un langage de commandes plus puissant. Au fil des décennies, il est devenu un incontournable dans de nombreuses distributions Unix et Linux, en particulier lorsque la compatibilité ascendante avec d'anciens scripts est importante.

ksh s'adresse aux administrateurs système, aux développeurs et aux utilisateurs avancés qui ont besoin d'un environnement de scripting fiable. Il est souvent choisi pour son équilibre entre la simplicité de sh et les fonctionnalités avancées de csh, ce qui en fait un bon compromis pour ceux qui veulent plus qu'un shell basique, mais moins qu'un langage de programmation complet.

Comparé à Windows PowerShell, ksh semble plus traditionnel et léger. Il ne dispose pas du paradigme de pipeline d'objets de PowerShell, mais sa ligne de commande basée sur le texte et sa syntaxe de script sont familières aux utilisateurs d'autres shells POSIX. La courbe d'apprentissage est modérée, avec de nombreux tutoriels disponibles pour ceux qui passent des scripts batch Windows ou PowerShell.

Idéal pour : Scripting shell à grande échelle où la compatibilité avec les scripts Unix legacy est essentielle.

Fonctionnalités clés de Ksh

  • Langage de shell conforme à POSIX
  • Tableaux intégrés et tableaux associatifs
  • Prise en charge des expressions arithmétiques
  • Substitution de commandes et globbing
  • Édition interactive avec historique
  • Portabilité des scripts sur Unix/Linux

Points forts

  • Gratuit et open source
  • Largement disponible dans les principales distributions
  • Forte compatibilité ascendante avec les scripts sh
  • Efficace pour les gros lots de tâches

Points faibles

  • Pas de pipeline d'objets natif comme dans PowerShell
  • Intégration GUI moderne limitée
  • Courbe d'apprentissage pour les fonctionnalités avancées

Logiciels Windows remplacés par Ksh

Installer Ksh sous Linux

Ubuntu / Mintsudo apt install ksh93u+m
Debiansudo apt install ksh93u+m
Fedorasudo dnf install ksh
Arch / Manjarosudo pacman -S ksh
openSUSEsudo zypper install ksh

Conseils pour les utilisateurs de Windows

Lors du passage de PowerShell, rappelez-vous que ksh utilise des fichiers texte avec l'extension .sh ou sans extension ; la syntaxe des commandes diffère (par exemple, $() pour la substitution de commandes, et non $(…)). Les raccourcis comme la complétion Tab fonctionnent, mais les cmdlets de style PowerShell sont absents. Les scripts qui s'appuient sur les objets PowerShell doivent être réécrits pour utiliser des flux de texte ou des utilitaires externes comme awk ou sed.

Ksh : questions fréquentes

ksh est-il toujours maintenu ?

Oui, la dernière version stable est ksh93, qui reçoit occasionnellement des mises à jour de sécurité.

Puis-je exécuter des scripts PowerShell dans ksh ?

Non. Les scripts PowerShell (.ps1) ne sont pas compatibles ; vous devez les réécrire en syntaxe ksh.

ksh prend-il en charge les tableaux ?

Oui, ksh93 prend en charge les tableaux indexés et associatifs, qui sont utiles pour les structures de données complexes.

Comment activer l'historique des commandes dans ksh ?

Ajoutez set -o histexpand et utilisez la commande history ; la plupart des distributions activent l'historique par défaut.

Mis à jour le