Bonjour, je suis en train d'écrire un script qui va calculer la quantité de données reste dans un volume de stockage. Je suis à court Tru64 Unix version 5.1b patch kit 6. Le script est en cours contre un AdvFS domaine. Je suis dans la programmation Korn Shell version M-11/16/88f.
L'idée de base est que je veux courir df-h et grep pour le domaine en question. Je me suis alors que la pipe de sortie en awk pour extraire les deux domaines et je veux les stocker dans des variables. J'ai fait jusqu'à présent avec mon script.
Alors maintenant, j'ai deux variables:
total et
restants. Les deux titulaires d'un numéro de suivi de la lettre G (pour Giga octets).
Je veux supprimer le mobile G et prendre les 2 nombres qui sont à gauche et à imprimer la différence. Qu'est-ce que je suis perplexe, c'est la façon de supprimer le mobile 'G'.
Je sais que dans
sed, Je pouvais faire quelque chose comme:
new_variable \u003d `
sed 's / [0-9] .* G $ / / g' `
de supprimer la traîne G, mais à ma connaissance, vous ne pouvez pas passer une variable en shell
sed, Donc je ne pense pas que la suite serait:
total \u003d `
sed 's / $ (total) $ / / g' `
Alors maintenant, mon programme a 2 variables que les deux titulaires d'un nombre suivi immédiatement par la lettre G. Je sais que je pourrais probablement utiliser couper, mais le nombre de caractères différente chaque semaine. Cette semaine,
total pourrait être de 4 caractères avec un mobile G, la semaine prochaine, il ne peut être 3. Que puis-je utiliser l'outil pour supprimer les «G» et de mettre simplement le nombre dans la variable? Je pense que si je pouvais faire de cette étape, il est passé j'ai pu chiffre partie de l'arithmétique.
Merci.