検索
ホームページバックエンド開発Python チュートリアルPython ベースの強力なシェル言語とコマンド プロンプトを共有します

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Xonsh は、Python ベース、クロスプラットフォーム、Unix 指向のシェル言語およびコマンド プロンプトです。本質的には、シェル コマンドを実行するための適切な構文を備えた Python インタープリタです。そのため、使い慣れたシェル環境で Python のすべての機能を利用できます。 Linux、OSX、Windows を含むすべての主要システムで動作します。

Bash スクリプトは、小規模なアプリケーションやバッチ アプリケーションにとって高速かつ効率的です。 Bash の制限の 1 つは、数学関数と浮動小数点数の処理です。

あなたが Python プログラマーであれば、利用可能な関数の膨大なライブラリを備えており、非常に気に入っていただけるでしょう。

Raspberry Pi ユーザーにとって、Xonsh は非常に合理化されたスクリプトを作成する多くの機会を提供します。 Python を使用して、サードパーティのデバイスやセンサーに接続できます。

この記事では、いくつかの例を通して Xonsh を紹介します。

はじめに

システム固有のインストール手順については、Xonsh のドキュメントを参照してください。 Raspberry Pi/Ubuntu/Debian にインストールするには、次のように入力します:

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

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Xonsh を実行するには、次のように入力します: xonsh

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

すぐに使える Xonsh には、構成ウィザードとチュートリアルが用意されています。

Python の使用

Python コードはコマンド ラインに直接入力できます。 Python のバージョンは、基盤となるシステムに何がロードされているかによって異なります。バージョンを確認するには:

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]'

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

# インタラクティブな Python インターフェイスと同様、出力を表示するために print ステートメントは必要ありません:

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'

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Bash の使用

Xonsh は最初に Python を使用するため、例として ls (Bash リスト コマンド) を取り上げます。

上記の例では、***ls*** が最初に次のように使用されます。 Bashのlistコマンドですが、同名の変数が定義されている場合はその変数が参照されます。

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'

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

最初の ls は Bash list コマンドとして使用され、2 番目の ls は Xonsh 表示変数 ls として使用されます。

Xonsh は Bash ステートメントを単一行として処理します。これは、次のことを意味します:

    Bash の for/while/if ステートメントはすべて 1 行に記述する必要があります
    文字の間にスペースを使用することを忘れないでください
    行展開 ("" による) はサポートされていません
  • Bash 関数はサポートされていません。
    Bash の代わりに Python で関数を作成できます
Bash での Python の使用

Python ステートメントは Bash で使用されます: @( Python声明)。 Bash で Python を使用する 2 つの例を次に示します。

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

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

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()

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Python での Bash の使用

Bash 変数は Python で直接使用できます。例:

Bash の日付を使用して Python に渡します

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

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Question

異なるシェルとサブシェル間での作業は少し混乱する可能性があります。どのシェルで作業しているのか、時々混乱することがあります。 ps コマンドは、xonsh* が実行されているかどうかを教えてくれます:

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

Python ベースの強力なシェル言語とコマンド プロンプトを共有します

Xonsh スクリプトを問題なく Bash スクリプトに渡すことができますが、一部の環境では問題があることがわかります。操作するには、Xonsh シェルを手動で強制終了する必要があります。

概要

Xonsh は、専門家にも初心者にも同様に日常的な使用に適しています。他のシェルとは異なり、xonsh は Python に基づいており、サブプロセス コマンドの呼び出し、環境の操作、ファイル システムの操作を容易にする追加の構文が追加されています。 xonsh コマンド プロンプトを使用すると、ユーザーは xonsh 言語に対話的にアクセスできます。

Xonsh は、シンプルなスクリプト ソリューションを探しているユーザーにとって多くの可能性を秘めています。

私自身の場合、おそらく Bash または Python ソリューションを使い続けるでしょうが、他の選択肢もあります。

以上がPython ベースの強力なシェル言語とコマンド プロンプトを共有しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は51CTO.COMで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Python:ゲーム、GUIなどPython:ゲーム、GUIなどApr 13, 2025 am 12:14 AM

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Python vs. C:比較されたアプリケーションとユースケースPython vs. C:比較されたアプリケーションとユースケースApr 12, 2025 am 12:01 AM

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間のPython計画:現実的なアプローチ2時間のPython計画:現実的なアプローチApr 11, 2025 am 12:04 AM

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Python:主要なアプリケーションの調査Python:主要なアプリケーションの調査Apr 10, 2025 am 09:41 AM

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間でどのくらいのPythonを学ぶことができますか?2時間でどのくらいのPythonを学ぶことができますか?Apr 09, 2025 pm 04:33 PM

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?Apr 02, 2025 am 07:15 AM

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

Python 3.6にピクルスファイルをロードするときに「__Builtin__」モジュールが見つからない場合はどうすればよいですか?Python 3.6にピクルスファイルをロードするときに「__Builtin__」モジュールが見つからない場合はどうすればよいですか?Apr 02, 2025 am 07:12 AM

Python 3.6のピクルスファイルのロードレポートエラー:modulenotFounderror:nomodulenamed ...

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール