Table des matières
Démarrage
Utilisation de Python
Utiliser Bash
Xonsh traite les instructions Bash comme des lignes simples. Cela signifie :
Utilisation de Python dans Bash
Utilisation de Bash dans Python
Résumé
Maison développement back-end Tutoriel Python Partagez un langage shell puissant et une invite de commande basée sur Python

Partagez un langage shell puissant et une invite de commande basée sur Python

Apr 11, 2023 pm 07:49 PM
python Commande shell

Partagez un langage shell puissant et une invite de commande basée sur Python

Xonsh est un langage shell et une invite de commande basés sur Python, multiplateforme et orienté Unix. Il s'agit essentiellement d'un interpréteur Python avec une bonne syntaxe pour exécuter des commandes shell. Vous disposez ainsi de toute la puissance de Python dans un environnement shell familier. Fonctionne sur tous les principaux systèmes, notamment Linux, OSX et Windows.

Les scripts Bash sont rapides et efficaces pour les applications petites ou par lots. L'une des limites de Bash est sa gestion des fonctions mathématiques et des nombres à virgule flottante.

Si vous êtes un programmeur Python, vous l'aimerez vraiment, il possède une énorme bibliothèque de fonctions disponibles.

Pour les utilisateurs de Raspberry Pi, Xonsh peut offrir de nombreuses possibilités d'écrire des scripts extrêmement rationalisés. Python peut être utilisé pour se connecter à des appareils et capteurs tiers.

Dans cet article, je présenterai Xonsh à travers quelques exemples.

Démarrage

Pour les instructions d'installation spécifiques au système, consultez la documentation Xonsh. Pour installer sur Raspberry Pi/Ubuntu/Debian, tapez :

linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install xonsh

Partagez un langage shell puissant et une invite de commande basée sur Python

Pour exécuter Xonsh, tapez simplement : xonsh

Partagez un langage shell puissant et une invite de commande basée sur Python

Xonsh prêt à l'emploi est livré avec un assistant de configuration et un didacticiel.

Utilisation de Python

Le code Python peut être saisi directement sur la ligne de commande. La version de Python dépendra de ce qui est chargé sur le système sous-jacent. Pour vérifier votre version :

linuxmi@linuxmi ~/www.linuxmi.com $ import sys
linuxmi@linuxmi ~/www.linuxmi.com $ sys.version
'3.9.7 (default, Sep 10 2021, 14:59:43) n[GCC 11.2.0]'

Partagez un langage shell puissant et une invite de commande basée sur Python

Comme pour l'interface Python interactive, aucune instruction d'impression n'est nécessaire pour voir le résultat :

linuxmi@linuxmi ~/www.linuxmi.com $ 7+9
16
linuxmi@linuxmi ~/www.linuxmi.com $ a=5;b=6
linuxmi@linuxmi ~/www.linuxmi.com $ a+b
11
linuxmi@linuxmi ~/www.linuxmi.com $ i="Hello World!"
linuxmi@linuxmi ~/www.linuxmi.com $ i + " www.linuxmi.com"
'Hello World! www.linuxmi.com'

Partagez un langage shell puissant et une invite de commande basée sur Python

Utiliser Bash

Xonsh Commencez avec Python, alors commencez par ls (Bash list command ) à titre d'exemple :

Dans l'exemple ci-dessus, ***ls*** est d'abord utilisé comme commande de liste Bash, mais si une variable portant le même nom est définie, cette variable est référencée.

linuxmi@linuxmi ~/www.linuxmi.com $ ls
'VS Code.png' www.linuxmi.com.jpg www.linuxmi.com.py wwww.linuxmi.com
 linuxmi.comwww.linuxmi.com.mp4 www.linuxmi.png
linuxmi@linuxmi ~/www.linuxmi.com $ ls="这是一个变量www.linuxmi.com"
linuxmi@linuxmi ~/www.linuxmi.com $ ls
'这是一个变量www.linuxmi.com'

Partagez un langage shell puissant et une invite de commande basée sur Python

Le premier ls est utilisé comme commande de liste Bash, et le second est la variable d'affichage Xonsh ls.

Xonsh traite les instructions Bash comme des lignes simples. Cela signifie :

  • Les instructions Bash for/while/if doivent être toutes sur une seule ligne
  • N'oubliez pas d'utiliser des espaces entre les caractères
  • Les extensions de ligne (avec "") ne sont pas prises en charge
  • Les fonctions Bash ne sont pas prises en charge soutenu.
  • Vous pouvez écrire des fonctions en Python au lieu de Bash

Utilisation de Python dans Bash

Les instructions Python sont utilisées dans Bash : @(instructions Python). Voici deux exemples d'utilisation de Python dans Bash :

linuxmi@linuxmi ~/www.linuxmi.com $ import sys
linuxmi@linuxmi ~/www.linuxmi.com $ echo @(sys.version)
3.9.7 (default, Sep 10 2021, 14:59:43)
[GCC 11.2.0]
linuxmi@linuxmi ~/www.linuxmi.com $ echo @("LinuxMi.com=" +str(8+9))
LinuxMi.com=17

Partagez un langage shell puissant et une invite de commande basée sur Python

Exemple

linuxmi@linuxmi ~/www.linuxmi.com $ from tkinter import *
linuxmi@linuxmi ~/www.linuxmi.com $ root = Tk()
linuxmi@linuxmi ~/www.linuxmi.com $ canvas = Canvas(root, width = 500, height =
500)
linuxmi@linuxmi ~/www.linuxmi.com $ canvas.pack()
linuxmi@linuxmi ~/www.linuxmi.com $ img = PhotoImage(file="www.linuxmi.com.png")
linuxmi@linuxmi ~/www.linuxmi.com $ canvas.create_image(0,0, anchor=NW, image=im
g)
1
linuxmi@linuxmi ~/www.linuxmi.com $ mainloop()

Partagez un langage shell puissant et une invite de commande basée sur Python

Utilisation de Bash dans Python

Les variables Bash peuvent être utilisées directement en Python, par exemple :

Utiliser la date Bash et Le problème avec le transmettre à Python

linuxmi@linuxmi ~/www.linuxmi.com $ now=$(date)
linuxmi@linuxmi ~/www.linuxmi.com $ print("现在的时间是: " + now)
现在的时间是: 2022年 04月 01日 星期五 19:17:13 CST

Partagez un langage shell puissant et une invite de commande basée sur Python

peut être un peu déroutant de travailler entre différents shells et sous-shells. Je trouve que je ne sais parfois pas dans quel shell je travaille. La commande ps me dira si xonsh* est en cours d'exécution :

linuxmi@linuxmi ~/www.linuxmi.com $ ps
PID TTYTIME CMD
 7966 pts/100:00:00 bash
 8044 pts/100:00:04 xonsh
11342 pts/100:00:00 ps

Partagez un langage shell puissant et une invite de commande basée sur Python

Je suis capable de transmettre des scripts Xonsh aux scripts Bash sans aucun problème, mais je trouve que pour certaines opérations, je dois tuer manuellement le shell Xonsh.

Résumé

Xonsh convient à une utilisation quotidienne par les experts et les novices. Contrairement à d'autres shells, xonsh est basé sur Python, ajoutant une syntaxe supplémentaire qui facilite l'appel des commandes de sous-processus, l'exploitation de l'environnement et l'utilisation des systèmes de fichiers. L'invite de commande xonsh offre aux utilisateurs un accès interactif au langage xonsh.

Xonsh a beaucoup de potentiel pour les utilisateurs à la recherche d'une solution de script simple.

Pour ma part, je m'en tiendrai probablement à une solution Bash ou Python, mais j'ai d'autres options.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

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 !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1543
276
Comment automatiser la saisie de données d'Excel à un formulaire Web avec Python? Comment automatiser la saisie de données d'Excel à un formulaire Web avec Python? Aug 12, 2025 am 02:39 AM

La méthode de remplissage des données Excel dans les formulaires Web à l'aide de Python est: utilisez d'abord des pandas pour lire les données Excel, puis utilisez le sélénium pour contrôler le navigateur pour remplir et soumettre automatiquement le formulaire; Les étapes spécifiques incluent l'installation de bibliothèques Pandas, OpenPyxl et Selenium, en téléchargeant le pilote de navigateur correspondant, en utilisant des pandas pour lire le nom, le courrier électronique, le téléphone et d'autres champs dans le fichier data.xlsx, le lancement du navigateur via le sélénium pour ouvrir la page Web cible, localiser les éléments de formulaire et remplir le traitement de données, en utilisant le formulaire Web pour traiter le contenu dynamique, ajouter le contenu de la charge dynamique, ajouter un traitement exception et traiter toutes les lignes de données dans une boucle.

Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Aug 14, 2025 am 11:15 AM

Table des matières Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Pourquoi l'analyse des sentiments est importante dans l'investissement des crypto-monnaies sources clés de données d'émotion a. Plateforme de médias sociaux b. Médias d'information c. Outils pour l'analyse des sentiments et la technologie Utilisé couramment des outils dans l'analyse des sentiments: Techniques adoptées: intégrer l'analyse des sentiments dans les stratégies de trading comment les traders l'utilisent: Exemple de stratégie: supposer le scénario de trading BTC Réglage du scénario: Signal émotionnel: interprétation des commerçants: Décision: Résultats: Limitations et risques de l'analyse des sentiments en utilisant de plus en plus les émotions pour le commerce des crypto-oreilles. Une récente étude en 2025 de Hamid

Comment gérer les grands ensembles de données dans Python qui ne rentrent pas dans la mémoire? Comment gérer les grands ensembles de données dans Python qui ne rentrent pas dans la mémoire? Aug 14, 2025 pm 01:00 PM

Lors du traitement de grands ensembles de données qui dépassent la mémoire dans Python, ils ne peuvent pas être chargés en RAM en même temps. Au lieu de cela, des stratégies telles que le traitement de la chasse, le stockage du disque ou le streaming doivent être adoptées; Les fichiers CSV peuvent être lus en morceaux via les paramètres ChunkSize de Pandas et le bloc traité par bloc. La daste peut être utilisée pour réaliser la parallélisation et la planification des tâches similaires à la syntaxe Pandas pour prendre en charge les opérations de données de mémoire importantes. Écrivez les fonctions du générateur pour lire les fichiers texte ligne par ligne pour réduire l'utilisation de la mémoire. Utilisez le format de stockage en colonne de parquet combiné avec Pyarrow pour lire efficacement des colonnes ou des groupes de lignes spécifiques. Utilisez Memmap de Numpy pour mapper la mémoire de grands tableaux numériques pour accéder aux fragments de données à la demande, ou stocker des données dans des données légères telles que SQLite ou DuckDB.

Comment déboguer votre code python Comment déboguer votre code python Aug 13, 2025 am 12:18 AM

Useprint () instructionSOcheckVariableValuesAndexEcutionflow, ajoutlabelsandtypesforclarity, andRemoveThembeForComting; 2.Ushepylepylebugger (pdb) withreakpoint () topauseeexecution, inspectvariables, andstepthroughcodeinteractive; 3.HandleExceptionsusin;

Comment déboguer le code Python dans le texte sublime? Comment déboguer le code Python dans le texte sublime? Aug 14, 2025 pm 04:51 PM

UsuBrimeText’sBuildSystemTorunpyThonscriptsandcatcherRorSpressingCtrl baftersettingthecorrectBuildSystemorCreatacustomone.2.InsertStrategicprint () StatementScocheckVariableValues, Types, etxExecutionflow, usingLabelSAndrepr () Forclarit

Comment exécuter le code Python dans le texte sublime? Comment exécuter le code Python dans le texte sublime? Aug 16, 2025 am 04:58 AM

Assurez-vous que Python est installé et ajouté au chemin du système, exécutez Python - Version ou Python3 - Version Version via le terminal; 2. Enregistrez le fichier Python en tant qu'extension .py, comme Hello.py; 3. Créez un système de construction personnalisé dans sublimeText, les utilisateurs de Windows utilisent {"CMD": ["Python", "- U", "$ File"]}, les utilisateurs de macOS / Linux utilisent {"CMD": ["Python3

Comment déboguer un script python dans vscode Comment déboguer un script python dans vscode Aug 16, 2025 am 02:53 AM

Pour déboguer Python Scripts, vous devez d'abord installer l'extension Python et configurer l'interprète, puis créer un fichier lancé.json pour définir la configuration de débogage, puis définir un point d'arrêt dans le code et appuyez sur F5 pour démarrer le débogage. Le script sera interrompu au point d'arrêt, permettant de vérifier les variables et l'exécution étape par étape. Enfin, en vérifiant le problème en affichant la sortie de la console, en ajoutant des journaux ou en ajustant les paramètres, etc., pour s'assurer que le processus de débogage est simple et efficace après la correction de l'environnement.

Comment aplatir une liste imbriquée ou une liste de listes dans Python Comment aplatir une liste imbriquée ou une liste de listes dans Python Aug 12, 2025 am 09:49 AM

AplatinganestestListInpyThonConvertsalist avec les publistiquesIntoasingleflatlist et ThebestMethDependSonTherestDepthanddatasize.forone-levelnesting, uselistcomprehensionliny

See all articles