Les opérations arithmétiques dans les scripts bash, en particulier la division, sont des tâches courantes. Cependant, Bash ne prend pas en charge les numéros de points flottants par défaut, ce qui rend les opérations de division un peu compliquées. Cet article explorera plusieurs méthodes de division différentes dans Bash et expliquera comment gérer le manque de division de points flottants à Bash.
Utilisez la commande expr
expr
est une méthode pour effectuer des opérations de division en bash. Il calcule l'expression et imprime le résultat à la console. La syntaxe de base est la suivante:
x = 60 y = -3 résultat = $ (expr $ x / $ y) Echo "Résultat: $ résultat"
Ici, la valeur de x
est divisée par y
et le résultat est stocké dans la variable result
. Il convient de noter qu'il doit y avoir des espaces avant et après l'opérateur de division /
. S'il n'y a pas d'espaces, la commande expr
traite l'expression comme une chaîne, résultant en une erreur de syntaxe.
Cependant, expr
a des limitations. Il ne prend en charge que la division entière, ce qui signifie que si le résultat doit être un numéro de point flottant, il sera tronqué à un entier. De plus, il ne peut pas accepter les nombres de points flottants en entrée.
Utiliser des supports doubles
Une autre façon d'effectuer des opérations de division consiste à utiliser la syntaxe à double support. Il s'agit de la méthode d'abréviation pour effectuer des opérations arithmétiques en bash:
x = 60 y = -9 résultat = $ (($ x / $ y)) Echo "Résultat: $ résultat"
Contrairement à la commande expr
, la syntaxe à double brasage ne nécessite pas d'espaces avant et après l'opérateur de division /
. Cependant, il ne prend toujours en charge que la division Integer et n'accepte pas les numéros de points flottants en entrée.
Utilisez la commande printf
pour améliorer la précision
printf
est un autre outil pratique pour la division en bash. Il peut retourner des nombres de points flottants, ce qui entraîne des résultats plus précis:
x = 60 y = -9 printf "% .4f \ n" $ ((10 ** 4 * x / y)) e-4
Dans cet exemple, x
est d'abord multiplié par 10 ^ 4 puis divisé par y
. Format spécificateur %.4f\n
la sortie vers un numéro de point flottant avec quatre décimales. Cependant, notez que le numérateur et le dénominateur doivent encore être des entiers.
Utilisez la commande bc
La commande bc
(Basic Calculator) est l'un des outils les plus puissants de Bash pour les opérations de division. Contrairement aux méthodes précédentes, il permet d'utiliser des numéros de points flottants comme entrée:
x = 10,5 y = -2 Echo "échelle = 4; $ x / $ y" |
Ici, scale=4
spécifie le nombre de chiffres après le point décimal dans le résultat. De plus, vous pouvez utiliser des variables de shell avec la commande bc
via le pipeline Shell |
en conclusion
La division est une opération de base dans les scripts bash. En utilisant la commande expr
, les commandes Syntaxe à double support, printf
et bc
, vous pouvez diviser efficacement les deux variables en bash. N'oubliez pas de choisir le bon outil en fonction de la question de savoir si vous avez besoin d'une division entière ou de points flottants et si votre variable est entier ou numéro de point flottant.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

WindowsispreferredfordesktopcomputingAndGamingDueto: 1) itsvastsoftwareAndGameLiBrary, 2) convivial et accumulant Interface, 3) Extensivehardwarecompatibilité et 4) performanceoptimization capacités, despitesomereSource-HEVYAnDupdate-liédistes.


Pendant des années, la distribution des logiciels Linux reposait sur des formats natifs comme Deb et RPM, profondément ancrés dans l'écosystème de chaque distribution. Cependant, Flatpak et Snap ont émergé, promettant une approche universelle de l'emballage des applications. Cet article examine

Les différences entre Linux et Windows dans la manutention des pilotes de périphériques se reflètent principalement dans la flexibilité de la gestion des pilotes et de l'environnement de développement. 1. Linux adopte une conception modulaire, et le pilote peut être chargé et désinstallé dynamiquement. Les développeurs doivent avoir une compréhension approfondie du mécanisme du noyau. 2. Windows s'appuie sur l'écosystème Microsoft, et le pilote doit être développé via WDK et signé et certifié. Le développement est relativement complexe mais assure la stabilité et la sécurité du système.

Les modèles de sécurité de Linux et Windows ont chacun leurs propres avantages. Linux offre une flexibilité et une personnalisation, permettant la sécurité via les autorisations utilisateur, les autorisations du système de fichiers et Selinux / Apparmor. Windows se concentre sur la convivialité et s'appuie sur Windowsdefender, UAC, pare-feu et bitlocker pour assurer la sécurité.

Linux et Windows diffèrent dans la compatibilité matérielle: Windows a une prise en charge approfondie du pilote, et Linux dépend de la communauté et des fournisseurs. Pour résoudre les problèmes de compatibilité Linux, vous pouvez compiler manuellement les pilotes, tels que le clonage du référentiel de pilotes RTL8188EU, la compilation et l'installation; Les utilisateurs de Windows doivent gérer les conducteurs pour optimiser les performances.

Les principales différences entre Linux et Windows dans le support de virtualisation sont: 1) Linux fournit KVM et Xen, avec des performances et une flexibilité exceptionnelles, adaptées aux environnements de personnalisation élevés; 2) Windows prend en charge la virtualisation via Hyper-V, avec une interface amicale, et est étroitement intégré à l'écosystème Microsoft, adapté aux entreprises qui reposent sur le logiciel Microsoft.

Les principales tâches des administrateurs système Linux incluent la surveillance du système et le réglage des performances, la gestion des utilisateurs, la gestion des packages de logiciels, la gestion de la sécurité et la sauvegarde, le dépannage et la résolution, l'optimisation des performances et les meilleures pratiques. 1. Utilisez le haut, le HTOP et d'autres outils pour surveiller les performances du système et régler. 2. Gérez les comptes d'utilisateurs et les autorisations via des commandes UserAdd et d'autres commandes. 3. Utilisez APT et YUM pour gérer les packages logiciels pour assurer les mises à jour du système et la sécurité. 4. Configurez un pare-feu, surveillez les journaux et effectuez une sauvegarde de données pour assurer la sécurité du système. 5. Dépannage et résoudre par l'analyse des journaux et l'utilisation des outils. 6. Optimiser les paramètres du noyau et la configuration des applications et suivre les meilleures pratiques pour améliorer les performances et la stabilité du système.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

mPDF
mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),
