GoGPT Best VPN GoSearch

Icône de favori OnWorks

trposix - En ligne dans le Cloud

Exécutez trposix 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 trposix 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


tr — traduire les caractères

SYNOPSIS


tr [−c|−C] [-s] string1 string2

tr −s [−c|−C] string1

tr-d [−c|−C] string1

tr−ds [−c|−C] string1 string2

DESCRIPTION


Le manuel de formation tr Le service public doit copier l'entrée standard sur la sortie standard avec substitution ou
suppression des caractères sélectionnés. Les options spécifiées et les string1 et string2
les opérandes doivent contrôler les traductions qui se produisent lors de la copie de caractères et
éléments d'assemblage de caractères.

OPTIONS


Le manuel de formation tr l'utilitaire doit être conforme au volume Base Definitions de POSIX.1‐2008, Blog 12.2,
Services Publics Syntaxe Conseils et recommandations.

Les options suivantes doivent être prises en charge :

-c Compléter l'ensemble de valeurs spécifié par string1. Voir la DESCRIPTION ÉTENDUE
.

-C Compléter le jeu de caractères spécifié par string1. Voir le PROLONGÉ
rubrique DESCRIPTIF.

-d Supprimer toutes les occurrences de caractères d'entrée spécifiées par string1.

-s Remplacez les instances de caractères répétés par un seul caractère, comme décrit
dans la section DESCRIPTION ÉTENDUE.

OPÉRANDES


Les opérandes suivants doivent être pris en charge :

string1, string2
Chaînes de contrôle de traduction. Chaque chaîne doit représenter un ensemble de caractères à
être converti en un tableau de caractères utilisé pour la traduction. Pour un
description détaillée de la façon dont les chaînes sont interprétées, voir le EXTENDED
rubrique DESCRIPTIF.

STDIN


L'entrée standard peut être n'importe quel type de fichier.

CONTRIBUTION DES DOSSIERS


Aucun.

ENVIRONNEMENT VARIABLES


Les variables d'environnement suivantes doivent affecter l'exécution de tr:

LANGUE Fournissez une valeur par défaut pour les variables d'internationalisation qui ne sont pas définies ou
nul. (Voir le volume Définitions de base de POSIX.1‐2008, Blog 8.2,
Internationalisation Variables pour la priorité de l'internationalisation
variables utilisées pour déterminer les valeurs des catégories de paramètres régionaux.)

LC_TOUS S'il est défini sur une valeur de chaîne non vide, remplace les valeurs de tous les autres
variables d'internationalisation.

LC_COLLER
Déterminer les paramètres régionaux pour le comportement des expressions de plage et l'équivalence
classes.

LC_CTYPE Déterminer la localisation pour l'interprétation des séquences d'octets de données de texte
sous forme de caractères (par exemple, des caractères à un octet par opposition aux caractères à plusieurs octets dans
arguments) et le comportement des classes de caractères.

LC_MESSAGES
Déterminez les paramètres régionaux qui doivent être utilisés pour affecter le format et le contenu de
messages de diagnostic écrits dans l'erreur standard.

NLSPATH Déterminer l'emplacement des catalogues de messages pour le traitement des LC_MESSAGES.

ASYNCHRONE ÉVÈNEMENTS


Par défaut.

SORTIE STD


Le manuel de formation tr la sortie doit être identique à l'entrée, à l'exception des valeurs spécifiées
métamorphoses.

STDERR


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

SORTIE DES DOSSIERS


Aucun.

ÉLARGI DESCRIPTION


Les opérandes string1 et string2 (si spécifié) définit deux tableaux de caractères. Les
les constructions de la liste suivante peuvent être utilisées pour spécifier des caractères ou un caractère unique
éléments de collation. Si l'une des constructions génère des éléments de classement à plusieurs caractères,
tr exclut, sans diagnostic, ces éléments à plusieurs caractères du résultat
Tableau.

caractère Tout caractère non décrit par l'une des conventions ci-dessous doit représenter
elle-même.

\octal Les séquences octales peuvent être utilisées pour représenter des caractères avec des valeurs codées spécifiques.
Une séquence octale doit consister en un suivi du plus long
séquence de caractères à un, deux ou trois chiffres octaux (01234567). La séquence
provoquera la valeur dont le codage est représenté par le un, deux ou trois
nombre entier octal à placer dans le tableau. Les caractères multi-octets nécessitent
plusieurs séquences d'échappement concaténées de ce type, y compris le premier
pour chaque octet.

\caractère
Les -les séquences d'échappement dans le volume Base Definitions de POSIX.1‐2008,
lampe de table 5-1, Échapper Séquences et Associé Actions ('\\', '\une', '\b', '\F',
'\n', '\r', '\t', '\v') doit être pris en charge. Les résultats de l'utilisation de tout autre
caractère, autre qu'un chiffre octal, suivant le ne sont pas spécifiés.
De plus, s'il n'y a pas de caractère après le , les résultats sont
non spécifié.

c-c Dans la locale POSIX, cette construction doit représenter la plage de classement
éléments entre les extrémités de la plage (tant qu'aucune des extrémités n'est un octal
séquence de la forme \octal), inclus, tel que défini par la séquence de classement.
Les caractères ou éléments de classement de la plage doivent être placés dans le tableau
dans l'ordre de classement ascendant. Si le deuxième point final précède le point de départ
point final dans la séquence de collation, il n'est pas spécifié si la plage de
éléments de classement est vide, ou cette construction est considérée comme invalide. Dans les localités
autre que la locale POSIX, cette construction a un comportement non spécifié.

Si l'une ou les deux extrémités de la plage sont des séquences octales de la forme \octal,
cela doit représenter la plage de valeurs codées spécifiques entre les deux plages
points de terminaison, inclus.

[:classe:] Représente tous les caractères appartenant à la classe de caractères définie, telle que définie
par le réglage actuel du LC_CTYPE catégorie locale. Le caractère suivant
les noms de classe doivent être acceptés lorsqu'ils sont spécifiés dans string1:

numéro d'album vide chiffre baisser point supérieur
Alpha ctrl graphique impression espace xchiffre

De plus, les expressions de classe de caractères de la forme [ :prénom:] doit être
reconnu dans les localités où le prénom le mot clé a reçu un classe de char
définition dans le LC_CTYPE catégorie.

Lorsque les deux -d et -s les options sont spécifiées, l'un des noms de classe de caractères
sera accepté dans string2. Sinon, seuls les noms de classes de caractères baisser or
supérieur sont valables dans string2 et seulement si la classe de caractères correspondante
(supérieur et baisser, respectivement) est spécifié dans la même position relative dans
string1. Une telle spécification doit être interprétée comme une demande de cas
conversion. Lorsque [:baisser:] apparaît dans string1 et [:supérieur:] apparaît dans string2,
les tableaux doivent contenir les caractères du toupie cartographie dans le LC_CTYPE
catégorie de la locale actuelle. Lorsque [:supérieur:] apparaît dans string1 et [:baisser:]
apparaît dans string2, les tableaux doivent contenir les caractères du baisser
cartographie dans le LC_CTYPE catégorie de la locale actuelle. Le premier personnage de
chaque paire de mappage doit être dans le tableau pour string1 et le deuxième caractère
de chaque paire de mappage doit être dans le tableau pour string2 dans le même parent
position.

À l'exception de la conversion de casse, les caractères spécifiés par une classe de caractères
expression doit être placée dans le tableau dans un ordre non spécifié.

Si le nom spécifié pour classe ne définit pas une classe de caractères valide dans le
locale actuelle, le comportement n'est pas défini.

[=équiv=] Représente tous les caractères ou éléments d'assemblage appartenant au même
classe d'équivalence comme équiv, tel que défini par le réglage actuel du LC_COLLER
catégorie locale. Une expression de classe d'équivalence n'est autorisée que dans
string1Ou en string2 lorsqu'il est utilisé par le combiné -d et -s options.
Les caractères appartenant à la classe d'équivalence doivent être placés dans le tableau
dans un ordre indéterminé.

[x*n] Représente n occurrences répétées du caractère x. Parce que cette expression
est utilisé pour mapper plusieurs caractères à un, il n'est valide que lorsqu'il se produit dans
string2. Si n est omis ou vaut zéro, il doit être interprété comme suffisamment grand pour
étendre la string2-séquence basée sur la longueur de la string1séquence basée sur.
If n a un zéro non significatif, il doit être interprété comme une valeur octale. Autrement,
il doit être interprété comme une valeur décimale.

When the -d l'option n'est pas spécifiée :

* Si string2 est présent, chaque caractère d'entrée trouvé dans le tableau spécifié par string1
doit être remplacé par le caractère à la même position relative dans le tableau
spécifié par string2. Si le tableau spécifié par string2 est plus court que celui
spécifié par string1, ou si un caractère apparaît plus d'une fois dans string1, les résultats
ne sont pas spécifiés.

* Si la -C est spécifiée, les compléments des caractères spécifiés par string1
(le jeu de tous les caractères du jeu de caractères actuel, tel que défini par le
réglage de LC_CTYPE, à l'exception de ceux effectivement spécifiés dans le string1 opérande) doit
être placé dans le tableau dans l'ordre de classement ascendant, tel que défini par le courant
réglage de LC_COLLER.

* Si la -c option est spécifiée, le complément des valeurs spécifiées par string1 doit
être placé dans le tableau par ordre croissant de valeur binaire.

* Parce que l'ordre dans lequel les caractères spécifiés par les expressions de classe de caractères ou
expressions de classe d'équivalence n'est pas définie, de telles expressions ne doivent être utilisées que si
l'intention est de mapper plusieurs caractères en un seul. Une exception est la conversion de casse, car
décrit précédemment.

When the -d l'option est spécifiée :

* Saisir les caractères trouvés dans le tableau spécifié par string1 sera supprimé.

* Quand le -C l'option est spécifiée avec -d, tous les caractères sauf ceux spécifiés par
string1 sera supprimé. Le contenu de string2 sont ignorés, à moins que le -s option est
également précisé.

* Quand le -c l'option est spécifiée avec -d, toutes les valeurs sauf celles spécifiées par string1
sera supprimé. Le contenu de string2 doit être ignoré, à moins que le -s option est
également précisé.

* La même chaîne ne peut pas être utilisée pour les deux -d et la -s option; quand les deux options
sont spécifiés, les deux string1 (utilisé pour la suppression) et string2 (utilisé pour presser) doit
être requis.

When the -s l'option est spécifiée, après que des suppressions ou des traductions ont eu lieu,
les séquences répétées du même caractère doivent être remplacées par une occurrence du même
caractère, si le caractère se trouve dans le tableau spécifié par le dernier opérande. Si la
le dernier opérande contient une classe de caractères, comme dans l'exemple suivant :

tr -s '[:espacer:]'

le tableau du dernier opérande doit contenir tous les caractères de cette classe de caractères.
Cependant, dans une conversion de cas, telle que décrite précédemment, telle que :

tr -s '[:supérieur:]' '[:inférieur:]'

le tableau du dernier opérande ne doit contenir que les caractères définis comme le deuxième
personnages dans chacun des toupie or baisser paires de caractères, le cas échéant.

Une chaîne vide utilisée pour string1 or string2 produit des résultats indéfinis.

EXIT STATUT


Les valeurs de sortie suivantes doivent être renvoyées :

0 Toutes les entrées ont été traitées avec succès.

>0 Une erreur s'est produite.

CONSÉQUENCES OF LES ERREURS


Par défaut.

Le manuel de formation Abonnement les sections sommes-nous informatif.

INSCRIPTION UTILISATION


Si nécessaire, string1 et string2 peut être entre guillemets pour éviter la correspondance de modèle par le shell.

Si un chiffre ordinaire (se représentant lui-même) doit suivre une séquence octale, l'octal
la séquence doit utiliser les trois chiffres complets pour éviter toute ambiguïté.

Quand string2 est plus courte que string1, il en résulte une différence entre l'historique System V et
systèmes BSD. Un système BSD pads string2 avec le dernier caractère trouvé dans string2. Ainsi, il
est possible de faire ce qui suit :

tr 0123456789 d

qui traduirait tous les chiffres à la lettre 'ré'. Étant donné que cette zone est spécifiquement
non spécifié dans ce volume de POSIX.1‐2008, les comportements BSD et System V sont
autorisé, mais une application conforme ne peut pas s'appuyer sur le comportement BSD. Il faudrait
codez l'exemple de la manière suivante :

tr 0123456789 '[ré*]'

Il convient de noter que, malgré des similitudes d'apparence, les opérandes de chaîne utilisés par
tr ne sont pas des expressions régulières.

Contrairement à certaines implémentations historiques, cette définition du tr utilitaire correctement
traite les caractères NUL dans son flux d'entrée. Les caractères NUL peuvent être supprimés en utilisant :

tr -d '\000'

EXEMPLES


1. L'exemple suivant crée une liste de tous les mots dans file1 un par ligne dans file2,
où un mot est considéré comme une chaîne maximale de lettres.

tr −cs "[:alpha:]" "[\n*]" <fichier1 >fichier2

2. L'exemple suivant traduit tous les caractères minuscules en file1 en majuscule et écrit
les résultats à la sortie standard.

tr "[:inférieur:]" "[:supérieur:]" <fichier1

3. Cet exemple utilise une classe d'équivalence pour identifier les variantes accentuées de la base
caractère 'e' in file1, qui sont dépouillés de signes diacritiques et écrits à file2.

tr "[=e=]" "[e*]" <fichier1 >fichier2

RAISONNEMENT


Dans certaines des premières propositions, une option explicite −n a été ajouté pour désactiver l'historique
comportement de suppression des caractères NUL de l'entrée. Il a été considéré qu'automatiquement
la suppression des caractères NUL de l'entrée n'était pas une fonctionnalité correcte. Cependant, le
enlèvement de −n dans une proposition ultérieure ne supprime pas l'exigence selon laquelle tr correctement
traiter les caractères NUL dans son flux d'entrée. Les caractères NUL peuvent être supprimés en utilisant tr -d
'\000'.

Implémentations historiques de tr diffèrent largement dans la syntaxe et le comportement. Par exemple, le
La version BSD n'a pas eu besoin des crochets pour la séquence de répétition. Les tr
la syntaxe de l'utilitaire est basée plus étroitement sur le modèle System V et XPG3 tout en essayant de
s'adapter aux implémentations historiques de BSD. Dans le cas du court string2 rembourrage, le
décision était de ne pas spécifier le comportement et de préserver les scripts System V et XPG3, qui pourraient
rencontrer des difficultés avec la méthode BSD. L'hypothèse a été faite que les utilisateurs de BSD tr avoir à
faire des aménagements pour respecter la syntaxe définie ici. Puisqu'il est possible d'utiliser le
séquence de répétition pour dupliquer le comportement souhaité, alors qu'il n'y a pas de moyen simple de
atteindre la méthode du Système V, c'était l'approche correcte, sinon souhaitable.

L'utilisation de valeurs octales pour spécifier les caractères de contrôle, tout en ayant des précédents historiques,
n'est pas portable. L'introduction de séquences d'échappement pour les caractères de contrôle devrait
fournir la portabilité nécessaire. Il est reconnu que cela peut causer des
scripts à casser.

Une première proposition incluait la prise en charge des éléments d'assemblage multi-caractères. il a été pointé
dehors que, tandis que tr utilise certains éléments syntaxiques des ER, le but de tr Est assez
différent; les plages, par exemple, n'ont pas la même signification (``aucun des caractères dans le
matchs de gamme'', versus ``traduit chaque caractère de la plage dans la sortie
homologue''). En conséquence, le support précédemment inclus pour l'assemblage de plusieurs caractères
éléments ont été supprimés. Ce qui reste, ce sont les plages dans l'ordre de classement actuel (pour prendre en charge,
par exemple, les caractères accentués), les classes de caractères et les classes d'équivalence.

Dans XPG3, le [ :classe:] et [=équiv=] les conventions sont indiquées avec des doubles crochets, comme dans RE
syntaxe. Cependant, tr ne met pas en œuvre les principes des ER ; il emprunte juste une partie de la syntaxe.
Par conséquent, [:classe:] et [=équiv=] doivent être considérés comme des éléments syntaxiques sur un pied d'égalité
avec [x*n], qui n'est pas une expression de crochet RE.

Les développeurs de normes considéreront les changements à tr qui lui permettent de traduire des caractères
entre différents codages de caractères, ou ils envisageront de fournir un nouvel utilitaire pour
accomplir ceci.

Sur les systèmes System V historiques, une expression de plage nécessite d'entourer des crochets,
telles que:

tr '[az]' '[AZ]'

Cependant, les systèmes basés sur BSD ne nécessitaient pas les crochets, et cette convention est utilisée ici
pour éviter de casser un grand nombre de scripts BSD :

tr AZ A-Z

Le script System V précédent continuera à fonctionner car les crochets, traités comme
caractères réguliers, sont traduits en eux-mêmes. Cependant, tout script System V qui
compté "a-z" représentant les trois personnages 'une', '−'et 'z' doit être réécrit
as "az−".

La norme ISO POSIX-2:1993 avait un -c option qui se comportait de la même manière que -C option, mais
n'a pas fourni de fonctionnalités équivalentes à -c option spécifiée dans POSIX.1‐2008. Cette
signifiait que la pratique historique de pouvoir spécifier tr -cd\000−\177 (ce qui
supprimer tous les octets avec le premier bit défini) n'aurait aucun effet car, dans la locale C,
les octets avec les valeurs octal 200 à octal 377 ne sont pas des caractères.

La version précédente indiquait également que les séquences octales faisaient référence à des éléments de collation et
peuvent être placés côte à côte pour spécifier des caractères multi-octets. Cependant, c'était
a noté que cela causait des ambiguïtés parce que tr ne serait pas en mesure de dire si adjacent
les séquences octales avaient l'intention de spécifier des caractères multi-octets ou plusieurs octets simples
personnages. POSIX.1‐2008 spécifie que les séquences octales se réfèrent toujours à un binaire à un octet
valeurs lorsqu'elles sont utilisées pour spécifier une extrémité d'une plage d'éléments d'assemblage.

Les versions antérieures de cette norme autorisaient les implémentations avec des octets autres que huit
bits, mais cela a été modifié dans cette version.

FUTUR DIRECTIONS


Aucun.

Utilisez trposix 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




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.