Il s'agit de la commande rcalc 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
rcalc - calculateur d'enregistrements
SYNOPSIS
rcalc [ -b ][ -l ][ -p ][ -n ][ -w ][ -u ][ -tS ][ -i le format ][ -o le format ][ -f source ][
-e expr ][ -s svar=sval ] déposer ..
DESCRIPTION
Rcalc transforme les « enregistrements » de chaque filet selon l'ensemble donné de littéraux et
informations relationnelles. Par défaut, les enregistrements sont séparés par des nouvelles lignes et contiennent
champs numériques séparés par des tabulations. Le -tS L'option est utilisée pour spécifier un autre onglet
caractère.
A -i le format L'option spécifie un modèle pour un autre format d'enregistrement d'entrée. Format is
interprétée comme une chaîne de spécification si elle contient un signe dollar '$'. Sinon, c'est
interprété comme le nom du fichier contenant la spécification de format. Dans tous les cas,
si le format ne se termine pas par une nouvelle ligne, une sera ajoutée automatiquement. Une spéciale
forme de la -i L'option peut être suivie immédiatement d'un « d » ou d'un « f » et d'un facultatif
count, qui est par défaut 1, indiquant le nombre de valeurs binaires doubles ou flottantes à lire
par enregistrement sur le fichier d'entrée. Si l'entrée est permutée en octets, le -identifiant or -si les options peuvent être
substitué. Si une entrée binaire est spécifiée, aucune chaîne de format ou fichier n'est nécessaire.
A -o le format L'option spécifie un autre format d'enregistrement de sortie. On interprète le
identique à une spécification d'entrée, sauf que le spécial -od or -de les options ne nécessitent pas
un décompte, car celui-ci sera déterminé par le nombre de canaux de sortie dans le
expressions. Si une sortie avec échange d'octets est souhaitée, le -oD or -de les options peuvent être
substitué.
Le manuel de formation -p L'option spécifie le "mode passif", dans lequel les caractères qui ne correspondent pas à l'entrée
Le format est transmis sans modification à la sortie. Cette option n'a aucun effet sauf si -i est également
spécifié, et n'a pas beaucoup de sens à moins que -o est également donné. Avec à la fois l'entrée et
formats de sortie, le mode passif peut efficacement remplacer les informations au milieu d'un
fichier ou flux sans affecter le reste des données.
Les définitions de variables et de fonctions dans chaque -f source le fichier est lu et compilé. Le
-e expr L’option peut être utilisée pour définir des variables sur la ligne de commande. Puisque bon nombre des
les caractères d'une expression ont une signification particulière pour le shell, cela devrait généralement être
entouré de guillemets simples. Le -s svar=sval L'option peut être utilisée pour attribuer une chaîne
variable une valeur de chaîne. Si cette variable chaîne apparaît dans un format d'entrée, enregistre uniquement
avec la valeur spécifiée sera traité.
Le manuel de formation -b L'option indique au programme d'accepter uniquement les correspondances exactes. Par défaut, les onglets et
les espaces sont ignorés, sauf en tant que séparateurs de champs. Le -l L'option demande au programme de
ignorez les nouvelles lignes dans l'entrée, en les traitant essentiellement de la même manière que des tabulations et des espaces.
Normalement, le début du format d'entrée correspond au début d'une ligne et la fin
du format correspond à la fin d'une ligne. Avec le -l option, le format d'entrée peut correspondre
n'importe où sur une ligne.
Le manuel de formation -w L'option entraîne la suppression des messages d'erreur non fatals (tels que la division par zéro).
Le manuel de formation -u L'option entraîne le vidage de la sortie après chaque enregistrement. Le -n l'option indique au
programme non pas pour obtenir une entrée, mais pour produire un seul enregistrement de sortie. Sinon, si non
les fichiers sont fournis, l'entrée standard est lue.
Les fichiers de format associent des noms à des champs de chaîne et numériques séparés par un littéral
informations dans un dossier. Un champ numérique est donné dans un fichier au format sous forme de signe dollar,
suivi d'accolades entourant un nom de variable :
Il s'agit d'un champ numérique : ${vname}
Une variable chaîne est placée entre parenthèses :
Il s'agit d'un champ de chaîne : $(sname)
Le programme tente de faire correspondre les informations littérales dans le format d'entrée à son entrée et
attribuez des champs de chaîne et numériques en conséquence. Si une variable de champ chaîne ou numérique
apparaît plus d'une fois dans le format de saisie, les valeurs de saisie pour les champs correspondants doivent
match (c'est-à-dire avoir la même valeur) pour que tout l'enregistrement corresponde. Les valeurs numériques sont autorisées
un certain écart, de l'ordre de 0.1 %, mais les variables de chaîne doivent correspondre exactement. Ainsi,
les variables factices pour les champs "ne s'en soucient pas" doivent recevoir des noms uniques afin qu'elles ne soient pas
tous doivent prendre la même valeur.
Pour chaque enregistrement d'entrée valide, un enregistrement de sortie est produit dans son format correspondant.
Les largeurs des champs de sortie sont données implicitement par l'espace occupé dans le fichier de format,
y compris le signe dollar et les accolades. Cela rend impossible la production de champs avec
moins de quatre caractères. Si la -b est spécifiée, les enregistrements d'entrée doivent exactement
correspondre au modèle. Par défaut, le caractère suivant chaque champ de saisie est utilisé comme
délimiteur. Cela implique que les champs de chaîne suivis d'un espace blanc ne peuvent pas
contiennent des chaînes avec des espaces blancs. De plus, les champs numériques suivis mais non précédés de blanc
space n'acceptera pas les nombres précédés d'un espace blanc. Les champs de saisie adjacents sont
conseillé uniquement avec le -b option. Les champs de sortie numériques peuvent également contenir des expressions
comme variables. Un signe dollar peut apparaître littéralement sous la forme de deux signes dollar ($$).
Les définitions spécifiées dans -e et -f les options associent les champs de sortie numériques aux valeurs numériques
champs de saisie. Pour le format d'enregistrement par défaut, un champ est une variable de la forme $N, où
N est le numéro de colonne, commençant par 1. Les colonnes de sortie apparaissent sur le côté gauche de
affectations, les colonnes de saisie apparaissent sur le côté droit.
Une définition de variable a la forme :
var = expression ;
Toute instance de la variable dans une expression sera remplacée par sa définition.
Une expression contient des nombres réels, des noms de variables, des appels de fonction et les éléments suivants
les opérateurs:
+ - * / ^
Les opérateurs sont évalués de gauche à droite. Les pouvoirs ont la plus haute priorité ; multiplication
et la division sont évaluées avant l'addition et la soustraction. Les expressions peuvent être regroupées
avec parenthèses. Toutes les valeurs sont réelles en double précision.
Une définition de fonction a la forme :
func(a1, a2, ..) = expression ;
L'expression peut contenir des instances des arguments de la fonction ainsi que d'autres variables
et fonctions. Les noms de fonctions peuvent être passés en arguments. Les fonctions récursives peuvent être
défini à l'aide d'appels à la fonction définie ou d'autres fonctions appelant la fonction définie
la fonction.
La variable cond, s'il est défini, déterminera si l'enregistrement d'entrée actuel produit un
enregistrement de sortie. Si cond est positif, une sortie est produite. Si cond est inférieur ou égal à
zéro, l'enregistrement est ignoré et aucune autre expression n'est évaluée. Ceci fournit un
méthode pratique pour éviter des calculs inappropriés. La bibliothèque suivante de pré-
les fonctions et variables définies sont fournies :
auberge) Renvoie la valeur de la colonne d'entrée n, ou le nombre de colonnes disponibles dans ce
enregistrer si n est 0. Il s'agit d'une autre façon d'obtenir une valeur de colonne au lieu de
utilisant la notation $N, et est plus flexible car programmable. Ce
La fonction est désactivée si un format d’entrée est utilisé.
si (cond, puis, autre)
si cond est supérieur à zéro, alors est évalué, sinon sinon est évalué.
Cette fonction est nécessaire pour les définitions récursives.
sélectionner(N, un1, un2, ..)
renvoie aN (N est arrondi à l'entier le plus proche). Cette fonction fournit un tableau
capacités. Si N est égal à zéro, le nombre d'arguments disponibles est renvoyé.
rand(x) calculer un nombre aléatoire entre 0 et 1 basé sur x.
plancher (x) renvoie le plus grand entier non supérieur à x.
ceil (x) renvoie le plus petit entier non inférieur à x.
sqrt (x) renvoie la racine carrée de x.
exp (x) calculer e à la puissance x (e approx = 2.718281828).
log (x) calculer le logarithme de x à la base e.
log10(x) calculer le logarithme de x en base 10.
PI le rapport de la circonférence d'un cercle à son diamètre.
recno le nombre d'enregistrements reconnus jusqu'à présent.
hors le nombre d'enregistrements produits jusqu'à présent (y compris celui-ci).
péché(x), cos(x), tan (x)
fonctions trigonométriques.
asin(x), acos(x), atan (x)
fonctions trigonométriques inverses.
atan2(oui, x)
tangente inverse de y/x (plage -pi à pi).
EXEMPLE
Pour imprimer la racine carrée de la colonne deux dans la première colonne et la colonne une fois la colonne trois dans
deuxième colonne :
rcalc -e '$1=sqrt($2);$2=$1*$3' fichier d'entrée > fichier de sortie
Utilisez rcalc en ligne à l'aide des services onworks.net