commande ksh

Objectif

Appelle l'interpréteur de commandes Korn.

Syntaxe

ksh [ -i ] [ { + | - } { a e f h k m n p t u v x } ] [ -o Option ... ] [ -c Chaîne | -s | -r | Fichier [ Paramètre ] ]

Remarque: L'indicateur précédent avec + (plus) au lieu de - (moins) s'éteint.

Descriptif

La commande Ksh appelle l'interpréteur de commandes Korn, qui est un interpréteur de commandes interactif et un langage de programmation de commandes. L'interpréteur de commandes exécute des commandes de manière interactive à partir d'un clavier de terminal ou d'un fichier.

L'interpréteur de commandes Korn est compatible avec l'interpréteur de commandes Bourne (appelé avec la commande Bsh ) et contient la plupart des fonctions de l'interpréteur de commandes Bourne ainsi que plusieurs des meilleures caractéristiques de l'interpréteur de commandes C.

Remarque: L'attente Ksh générée se comporte d'une manière similaire à l'API Attente parent () .

Une version améliorée de l'interpréteur de commandes Korn, appelée ksh93, est également disponible. L'interpréteur de commandes Korn amélioré comporte des fonctions supplémentaires qui ne sont pas disponibles dans l'interpréteur de commandes Korn par défaut.

En outre, une version restreinte du shell Korn, appelée rksh, est disponible. L'interpréteur de commandes Korn restreint permet aux administrateurs de fournir un environnement d'exécution contrôlé aux utilisateurs.

Indicateurs

Article Descriptif
-a Exporte automatiquement tous les paramètres suivants définis.
-c Chaîne Permet à l'interpréteur de commandes Korn de lire des commandes à partir de la variable Chaîne . Cette option ne peut pas être utilisée avec l'indicateur -s ou avec le paramètre Fichier[Paramètre].
-e Exécute l'interruption ERR , si elle est définie, et quitte si une commande a un statut d'exit différent de zéro, sauf dans les conditions suivantes:
  • La commande simple est contenue dans un "& &" Ou "| |".
  • La commande simple suit immédiatement "if", "while" ou "until".
  • La commande simple est contenue dans un pipeline suivant "!".
Ce mode est désactivé lorsque les profils sont lus.
-f Désactive la substitution de nom de fichier.
-h Désigne chaque commande en tant qu'alias de suivi lors de sa première détection.
-i Indique que la coque est interactive. Un interpréteur de commandes interactif est également indiqué si l'entrée et la sortie de l'interpréteur de commandes sont connectées à un terminal (comme déterminé par le sous-programme Ioctl ). Dans ce cas, la variable d'environnement TERME est ignorée (de sorte que la commande Kill 0 ne tue pas un shell interactif) et le signal INTR est pris et ignoré (de sorte qu'un état d'attente peut être interrompu). Dans tous les cas, le signal QUITTER est ignoré par l'interpréteur de commandes.
-k Place tous les arguments d'affectation de paramètre dans l'environnement pour une commande, et pas uniquement les arguments qui précèdent le nom de la commande.
-m Exécute les travaux en arrière-plan dans un processus distinct et imprime une ligne une fois qu'ils sont terminés. L'état de sortie des travaux en arrière-plan est indiqué dans un message de fin d'exécution. Sur les systèmes comportant un contrôle de travaux, cet indicateur est activé automatiquement pour les interpréteurs de commandes interactifs.
-n Lit les commandes et y recherche des erreurs de syntaxe, mais ne les exécute pas. Cet indicateur est ignoré pour les interpréteurs interactifs.
-o Option Imprime les paramètres d'option en cours et un message d'erreur si vous ne spécifiez pas d'argument. Vous pouvez utiliser cet indicateur pour activer l'une des options suivantes:
allexport
Identique à l'indicateur -a.
errexit
Identique à l'indicateur -e .
bgnice
Exécute tous les travaux en arrière-plan avec une priorité moindre. Il s'agit du mode par défaut.
emacs
Ouvre un éditeur en ligne de type emacs pour la saisie des commandes.
gmacs
Entre un éditeur en ligne de style gmacs pour la saisie de commande.
ignoreeof
Ne quitte pas l'interpréteur lorsqu'il rencontre un caractère de fin de fichier. Vous devez utiliser la commande Sortie ou remplacer l'indicateur et quitter l'interpréteur de commandes en appuyant sur la séquence de touches Ctrl-D plus de 11 fois.
keyword
Identique à l'indicateur -k.
markdirs
Ajout une / (barre oblique) à tous les noms de répertoire qui sont le résultat de la substitution de nom de fichier.
monitor
Identique à l'indicateur -m.
noclobber
Empêche la redirection à partir de la troncature des fichiers existants. Lorsque vous spécifiez cette option, utilisez le symbole de réacheminement >| (caret droit, symbole de tube) pour tronquer un fichier.
noexec
Identique à l'indicateur -n.
noglob
Identique à l'indicateur -f.
nolog
Empêche la sauvegarde des définitions de fonction dans le fichier historique.
nounset
Identique à l'indicateur -u.
privileged
Identique à l'indicateur -p.
verbose
Identique à l'indicateur -v.
trackall
Identique à l'indicateur -h.
vi
Passe dans le mode d'insertion d'un éditeur en ligne de type vi- pour la saisie de commande. Le fait d'entrer un caractère d'échappement 033 place l'éditeur en mode de déplacement. Un retour envoie la ligne.
viraw
Traite chaque caractère tel qu'il est entré en mode vi.
xtrace
Identique à l'indicateur -x.

Vous pouvez définir plusieurs options sur une seule ligne de commande ksh.

-P Désactive le traitement du fichier $HOME/.profile lorsque vous utilisez le shell comme shell de connexion.
-r Exécute une coque restreinte. Avec un interpréteur de commandes restreint, vous ne pouvez pas:
  • Modifiez le répertoire de travail en cours.
  • Définissez la valeur de la variable SHELL, ENVou CHEMIN .
  • Indiquez le nom de chemin d'une commande contenant une barre oblique / (barre oblique).
  • Rediriger la sortie d'une commande avec > (caret droit), >| (caret droit, symbole de tube), <> (caret gauche, caret droit) ou >> (deux carets droits).
L'utilisation de cet indicateur est identique à l'exécution de la commande rksh .
-S Permet à la commande Ksh de lire les commandes à partir de l'entrée standard. La sortie de la coque, à l'exception de la sortie des commandes spéciales, est écrite dans le descripteur de fichier 2. Ce paramètre ne peut pas être utilisé avec l'indicateur -c ou avec le paramètre Fichier[Paramètre].
-t Quitte après la lecture et l'exécution d'une commande.
-u Traite les paramètres non définis comme des erreurs lors de la substitution.
-v Imprime les lignes d'entrée de l'interpréteur au fur et à mesure qu'elles sont lues.
-X Imprime les commandes exécutées et leurs arguments.

Fichiers

Article Descriptif
/usr/bin/ksh Contient le nom de chemin d'accès à l'interpréteur de commandes Korn.
/tmp/sh* Contient les fichiers temporaires créés lors de l'ouverture d'un shell.