anglaisfrançaisespagnol

Icône de favori OnWorks

setposix - En ligne dans le Cloud

Exécutez setposix dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande setposix qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


set — définir ou désactiver les options et les paramètres de position

SYNOPSIS


set [−abCefhmnuvx] [-o option] [argument ]

set [+abCefhmnuvx] [+o option] [argument ]

ensemble −− [argument ]

définir −o

régler +o

DESCRIPTION


Sinon options ou arguments sont spécifiés, set doit écrire les noms et les valeurs de tous
variables shell dans la séquence de classement de la locale actuelle. Chaque prénom commencera le
une ligne séparée, en utilisant le format :

"%s=%s\n", <prénom>,Plus-value>

Le Plus-value la chaîne doit être écrite avec des guillemets appropriés ; voir la description de la coque
citant dans Section 2.2, Citant. La sortie doit pouvoir être réintroduite dans le shell,
définir ou réinitialiser, dans la mesure du possible, les variables actuellement définies ; lecture seulement
les variables ne peuvent pas être réinitialisées.

Lorsque des options sont spécifiées, elles doivent définir ou désactiver les attributs du shell, comme décrit
au dessous de. Lorsque arguments sont spécifiés, ils provoquent l'activation ou la désactivation des paramètres de position,
comme décrit ci-dessous. La définition ou la désactivation des attributs et des paramètres de position ne sont pas
actions nécessairement liées, mais elles peuvent être combinées en une seule invocation de set.

Le set spécial intégré doit prendre en charge le volume Base Definitions de POSIX.1‐2008,
Section 12.2, Utilité Syntaxe Recommandations sauf que les options peuvent être spécifiées avec un
premier (ce qui signifie activer l'option) ou (ce qui signifie le désactiver) à moins que
spécifié autrement.

Les implémentations doivent prendre en charge les options de la liste suivante dans leur et
formes. Ces options peuvent également être spécifiées en tant qu'options pour sh.

-a Lorsque cette option est activée, le Exporter l'attribut doit être défini pour chaque variable à laquelle
une mission est effectuée ; voir le volume Base Definitions de POSIX.1‐2008, Section
4.22, Variable Affectation. Si l'affectation précède un nom d'utilitaire dans une commande,
le Exporter l'attribut ne doit pas persister dans l'environnement d'exécution actuel après
l'utilitaire se termine, à l'exception de celui qui précède l'un des
les services publics provoquent la Exporter attribut à persister une fois la fonction intégrée terminée.
Si l'affectation ne précède pas un nom d'utilitaire dans la commande, ou si le
l'affectation est le résultat de l'exploitation du getops or lire les services publics, le Exporter
L'attribut doit persister jusqu'à ce que la variable soit désactivée.

-b Cette option doit être prise en charge si la mise en œuvre prend en charge la portabilité de l'utilisateur
Option utilitaires. Il doit amener le shell à informer l'utilisateur de manière asynchrone de
achèvements des travaux de fond. Le message suivant est écrit dans l'erreur standard :

"[%d]%c %s%s\n", <numéro de travail>,actuel>, ,

où les champs sont les suivants :

<actuel> Le personnage '+' identifie le travail qui serait utilisé par défaut pour
le fg or bg services publics; ce travail peut également être spécifié à l'aide de la id_travail
"%+" or "%%". Le personnage '−' identifie le travail qui deviendrait
la valeur par défaut si le travail par défaut actuel devait se fermer ; ce travail peut aussi
être spécifié à l'aide de la id_travail "%−". Pour les autres emplois, ce domaine est un
. Au plus un emploi peut être identifié avec '+' et au plus un emploi
peut être identifié avec '−'. S'il y a un travail suspendu, alors le
l'emploi actuel doit être un emploi suspendu. S'il y a au moins deux
travaux suspendus, le travail précédent sera également un travail suspendu.

<numéro de travail>
Un numéro qui peut être utilisé pour identifier le groupe de processus au attendez, fg,
bg et tuer utilitaires. En utilisant ces utilitaires, le travail peut être identifié
en préfixant le numéro de travail avec '%'.

<statuts> Non spécifié.

<nom du travail> Non spécifié.

Lorsque le shell informe l'utilisateur qu'un travail est terminé, il peut supprimer le
ID de processus de la liste de ceux connus dans l'environnement d'exécution du shell actuel ;
sur le lien Section 2.9.3.1, Exemples. La notification asynchrone ne doit pas être activée par
défaut.

-C (Majuscule C.) Empêcher les fichiers existants d'être écrasés par le shell '>'
opérateur de redirection (voir Section 2.7.2, Redirection Sortie); la ">|" redirection
l'opérateur doit annuler cette nul option pour un fichier individuel.

-e Lorsque cette option est activée, lorsqu'une commande échoue (pour l'une des raisons répertoriées dans
Section 2.8.1, Conséquences of coquille Erreurs ou en renvoyant un état de sortie supérieur
que zéro), le shell doit immédiatement sortir avec les exceptions suivantes :

1. L'échec d'une commande individuelle dans un pipeline multi-commandes ne doit pas
faire sortir le shell. Seule la défaillance de la canalisation elle-même doit être
pris en considération.

2. le -e doit être ignoré lors de l'exécution de la liste composée suivant le
tout en, jusqu'au, if, ou Elif mot réservé, un pipeline commençant par le !
mot réservé, ou toute commande d'une liste ET-OU autre que la dernière.

3. Si l'état de sortie d'une commande composée autre qu'une commande de sous-shell était le
résultat d'un échec pendant -e était ignoré, alors -e ne s'appliquera pas à ce
commander.

Cette exigence s'applique à l'environnement shell et à chaque environnement sous-shell
séparément. Par exemple, dans :

set -e ; (faux; echo un) | chat; echo deux

le non la commande fait quitter le sous-shell sans s'exécuter echo UN; cependant,
echo deux est exécuté car l'état de sortie du pipeline (faux; echo un) | cat
est zéro.

−f Le shell doit désactiver l'expansion du nom de chemin.

-h Localiser et mémoriser les utilitaires invoqués par les fonctions au fur et à mesure que ces fonctions sont définies
(les utilitaires sont normalement localisés lorsque la fonction est exécutée).

−m Cette option doit être prise en charge si la mise en œuvre prend en charge la portabilité de l'utilisateur
Option utilitaires. Tous les travaux doivent être exécutés dans leurs propres groupes de processus. Immédiatement
avant que le shell n'émette une invite après la fin de la tâche en arrière-plan, un message
signaler l'état de sortie de la tâche d'arrière-plan doit être écrit dans l'erreur standard.
Si un travail de premier plan s'arrête, le shell doit écrire un message d'erreur standard à ce
effet, formaté comme décrit par le emplois utilitaire. De plus, si un emploi change
état autre que la sortie (par exemple, s'il s'arrête pour l'entrée ou la sortie ou est
arrêté par un signal SIGSTOP), le shell doit écrire un message similaire immédiatement
avant d'écrire l'invite suivante. Cette option est activée par défaut pour l'interactivité
coquillages.

−n Le shell doit lire les commandes mais ne les exécute pas ; cela peut être utilisé pour vérifier
pour les erreurs de syntaxe de script shell. Un shell interactif peut ignorer cette option.

-o Écrire les paramètres actuels des options sur la sortie standard dans un format non spécifié
le format.

+o Écrire les paramètres d'option actuels sur la sortie standard dans un format approprié
pour la réentrée dans le shell en tant que commandes qui permettent d'obtenir les mêmes paramètres d'options.

-o option
Cette option est prise en charge si le système prend en charge les utilitaires de portabilité utilisateur
option. Il définira diverses options, dont beaucoup seront équivalentes à la
lettres à option unique. Les valeurs suivantes de option doivent être pris en charge :

toutexporter Équivalent à -a.

erresort Équivalent à -e.

ignorer Empêcher un shell interactif de se fermer à la fin du fichier. Ce paramètre
empêche les déconnexions accidentelles lorsque ‐D est entré. Un utilisateur doit
explicitement sortie pour quitter le shell interactif.

moniteur Équivalent à −m. Cette option est prise en charge si le système prend en charge le
Option Utilitaires de portabilité utilisateur.

nul Équivalent à -C (C majuscule).

noglob Équivalent à −f.

noexec Équivalent à −n.

nolog Empêcher l'entrée de définitions de fonction dans l'historique des commandes ; voir
Command Histoire Liste.

notifier Équivalent à -b.

nom Équivalent à -u.

verbeux Équivalent à -v.

vi Autoriser l'édition de la ligne de commande du shell à l'aide de la fonction intégrée vi éditeur. Activation vi
mode doit désactiver tout autre mode d'édition de ligne de commande fourni en tant que
extension de la mise en œuvre.

Il n'est pas nécessaire de pouvoir définir vi mode activé pour certains modes de bloc
terminaux.

x trace Équivalent à -x.

-u Lorsque le shell essaie de développer un paramètre non défini autre que le '@' et '*' spécial
paramètres, il écrira un message sur l'erreur standard et n'exécutera pas le
commande contenant l'extension, mais dans le but de définir la '?' spécial
paramètre et l'état de sortie du shell, la commande doit être traitée comme ayant
été exécuté et a renvoyé un statut de sortie compris entre 1 et 125 inclus. Un non-
le shell interactif doit se fermer immédiatement. Un shell interactif ne doit pas se fermer.

-v Le shell doit écrire son entrée dans l'erreur standard au fur et à mesure de sa lecture.

-x Le shell doit écrire dans l'erreur standard une trace pour chaque commande après son expansion
la commande et avant qu'elle ne l'exécute. Il n'est pas précisé si la commande qui
désactive le traçage est tracé.

La valeur par défaut de toutes ces options doit être désactivée (non définie), sauf indication contraire dans le
description de l'option ou à moins que le shell n'ait été invoqué avec eux ; voir sh.

Les arguments restants doivent être attribués dans l'ordre aux paramètres positionnels. Les
paramètre spécial '#' doit être réglé pour refléter le nombre de paramètres de position. Tous
les paramètres de position doivent être désactivés avant que de nouvelles valeurs ne soient attribuées.

Si le premier argument est '−', les résultats ne sont pas précisés.

L'argument particulier "−−" immédiatement après le set le nom de la commande peut être utilisé pour
délimiter les arguments si le premier argument commence par '+' or '−', ou pour empêcher
liste par inadvertance de toutes les variables shell lorsqu'il n'y a pas d'arguments. La commande set −−
sans argument doit désactiver tous les paramètres de position et définir le paramètre spécial '#'
à zéro.

OPTIONS


Voir le DESCRIPTIF.

OPÉRANDES


Voir le DESCRIPTIF.

STDIN


Non utilisé.

CONTRIBUTION DES DOSSIERS


Aucun.

ENVIRONNEMENT VARIABLES


Aucun.

ASYNCHRONE ÉVÈNEMENTS


Par défaut.

SORTIE STD


Voir le DESCRIPTIF.

STDERR


L'erreur standard ne doit être utilisée que pour les messages de diagnostic.

SORTIE DES DOSSIERS


Aucun.

ÉLARGI DESCRIPTION


Aucun.

EXIT STATUT


Zero.

CONSÉQUENCES OF LES ERREURS


Par défaut.

Le Abonnement les sections informatif.

INSCRIPTION UTILISATION


Les rédacteurs d'applications doivent éviter de s'appuyer sur set -e au sein des fonctions. Par exemple, dans le
script suivant :

set -e
démarrer() {
un_serveur
echo un_serveur j'ai commencé réussir
}
Commencer || echo >&2 un_serveur manqué

le -e est ignoré dans le corps de la fonction (car la fonction est une commande dans
une liste ET-OU autre que la dernière). Par conséquent, si un_serveur échoue, la fonction porte
en écho "un_serveurj'ai commencéavec succès", et l'état de sortie de la fonction est zéro
(ce qui signifie "un_serveuréchoué" n'est pas affiché).

EXEMPLES


Écrivez toutes les variables et leurs valeurs :

set

Définissez $1, $2 et $3 et définissez "$ #" à 3:

set c a b

Allume le -x et -v options:

set −xv

Désactivez tous les paramètres de position :

set −−

Réglez $1 sur la valeur de x, même s'il commence par '−' or '+':

set −− "$x"

Réglez les paramètres de position sur l'expansion de x, même si x se développe avec un leader '−'
or '+':

set −− $x

RAISONNEMENT


Le set −− la forme est répertoriée spécifiquement dans le SYNOPSIS même si cet usage est implicite
par les directives de syntaxe utilitaire. L'explication de cette fonctionnalité lève toute ambiguïté
savoir si le set −− forme pourrait être mal interprétée comme étant équivalente à set sans
toutes les options ou arguments. La fonctionnalité de ce formulaire a été adoptée à partir de la
KornShell. Dans le système V, set −− ne désactive les paramètres que s'il y a au moins un argument ;
le seul moyen de désactiver tous les paramètres est d'utiliser décalage. L'utilisation de la version KornShell devrait
n'affecte pas les scripts System V car il ne devrait y avoir aucune raison de l'émettre sans
arguments délibérément; s'il a été émis comme, par exemple :

set −− "$@"

et il n'y avait en fait aucun argument résultant de "$@", la désactivation des paramètres
avoir aucun résultat.

Le set + dans les premières propositions a été omis car il s'agit d'une duplication inutile de set
pratique historique seule et peu répandue.

Le nul l'option a été modifiée pour permettre set -C la set -o nul option.
La version à une lettre a été ajoutée afin que l'historique "$−" le paradigme ne serait pas
cassé; voir Section 2.5.2, Spécial Paramètres.

La description du -e L'option est destinée à correspondre au comportement de la version 1988 de
le KornShell.

Le -h flag est lié au hachage du nom de la commande. Voir hachage.

set les drapeaux ont été omis intentionnellement avec la justification suivante :

-k Le -k flag a été initialement ajouté par l'auteur du shell Bourne pour le rendre plus facile
pour les utilisateurs de versions préliminaires du shell. Dans les premières versions de la Bourne
décortiquer la construction set prénom=Plus-value devait être utilisé pour attribuer des valeurs à shell
variables. Le problème avec -k est que le comportement affecte l'analyse, virtuellement
excluant l'écriture de tout compilateur. Pour expliquer le comportement de -k, Il est nécessaire de
décrire l'algorithme d'analyse, qui est défini par l'implémentation. Par exemple:

set -k; echo prénom=Plus-value

et :

set -k
echo prénom=Plus-value

se comporter différemment. L'interaction avec les fonctions est encore plus complexe. Quel est
plus, le -k flag n'est jamais nécessaire, car la ligne de commande aurait pu être réorganisée.

-t Le -t flag est difficile à spécifier et presque jamais utilisé. La seule utilisation connue pourrait être
fait avec here-documents. De plus, le comportement avec ksh et sh diffère. Les
La page de référence indique qu'elle se ferme après avoir lu et exécuté une commande. Quel est
une commande ? Si l'entrée est données;données, sh exécute les deux données commandes pendant que ksh
ne fait que le premier.

Il a été envisagé de réécrire set pour simplifier sa syntaxe confuse. Une spécificité
suggestion était que le unset utilitaire doit être utilisé pour désactiver les options au lieu d'utiliser le
non-obtenir()-capable +option syntaxe. Cependant, il a été conclu que l'historique
pratique d'utilisation +option était satisfaisante et qu'il n'y avait aucune raison impérieuse de
modifier une pratique historique aussi répandue.

Le -o option a été adoptée à partir de KornShell pour répondre aux besoins des utilisateurs. En plus de son
interface généralement conviviale, -o est nécessaire pour fournir le vi mode d'édition en ligne de commande,
pour laquelle la pratique historique ne donne aucun nom d'option à une seule lettre. (Bien qu'il puisse y avoir
été possible d'inventer une telle lettre, il a été reconnu que d'autres modes d'édition seraient
développé et -o fournit amplement d'espace de nom pour décrire de telles extensions.)

Les implémentations historiques sont incohérentes dans le format utilisé pour -o état des options
rapport. Les +o format sans option-argument a été ajouté pour permettre un accès portable à
les options qui peuvent être enregistrées puis restaurées ultérieurement à l'aide, par exemple, d'un script dot.

Historiquement, sh a tracé la commande set +x, mais ksh n'a pas fait.

Le ignorer le paramètre empêche les déconnexions accidentelles lorsque le caractère de fin de fichier
(typiquement ‐D) est entré. Un utilisateur doit explicitement sortie quitter l'interactif
coquille.

Le set −m l'option a été ajoutée pour s'appliquer uniquement à l'EPU car elle s'applique principalement aux
utilisation interactive, pas d'applications de script shell.

La possibilité de faire une notification asynchrone est devenue disponible dans la version 1988 du
KornShell. Pour que cela se produise, l'utilisateur devait lancer la commande :

piège "travaux -n" CLD

Le shell C fournit deux niveaux différents de capacité de notification asynchrone. Les
variable d'environnement notifier est analogue à ce qui se fait dans set -b or set -o notifier. Quand
défini, il informe immédiatement l'utilisateur de la fin des travaux en arrière-plan. Lorsqu'il n'est pas réglé, ce
la capacité est désactivée.

L'autre capacité de notification vient de l'utilitaire intégré notifier. La syntaxe est :

notifier [%travail ... ]

En émettant notifier sans opérande, le shell C avertit l'utilisateur
de manière asynchrone lorsque l'état du travail en cours change. Si les opérandes sont donnés, notifier
informe de manière asynchrone l'utilisateur des changements d'état des travaux spécifiés.

Pour ajouter une notification asynchrone au shell POSIX, ni les extensions KornShell de
piège, ni le shell C notifier variable d'environnement semblait appropriée (notifier n'est pas un
nom de variable d'environnement POSIX approprié).

Le set -b option a été choisie comme compromis.

Le notifier intégré était considéré comme ayant plus de fonctionnalités que ce qui était nécessaire pour un simple
notification asynchrone.

Historiquement, certains obus appliquaient le -u option à tous les paramètres, y compris $@ et $*.
Les développeurs standard ont estimé qu'il s'agissait d'une anomalie car il est normal et courant pour
$@ et $* à utiliser dans les scripts shell, qu'ils aient été passés ou non
arguments. Traiter ces utilisations comme une erreur lorsqu'aucun argument n'est passé réduit la valeur
of -u dans le but de trouver des fautes d'orthographe dans les noms de variables et les utilisations de
paramètres de position non définis.

FUTUR DIRECTIONS


Aucun.

Utilisez setposix en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad