Erstellen Sie Ihre eigenen Linux-Befehle in Python

Über diesen Artikel

Python wird heutzutage für verschiedene Zwecke verwendet, ist aber auch nützlich, wenn Sie kleine Aufgaben wie Dateivorgänge automatisieren möchten!

[Lassen Sie Python die langweiligen Dinge tun](https://www.amazon.co.jp/%E9%80%80%E5%B1%88%E3%81%AA%E3%81%93%E3% 81% A8% E3% 81% AFPython% E3% 81% AB% E3% 82% 84% E3% 82% 89% E3% 81% 9B% E3% 82% 88% E3% 81% 86-% E2% 80 % 95% E3% 83% 8E% E3% 83% B3% E3% 83% 97% E3% 83% AD% E3% 82% B0% E3% 83% A9% E3% 83% 9E% E3% 83% BC % E3% 81% AB% E3% 82% 82% E3% 81% A7% E3% 81% 8D% E3% 82% 8B% E8% 87% AA% E5% 8B% 95% E5% 8C% 96% E5 % 87% A6% E7% 90% 86% E3% 83% 97% E3% 83% AD% E3% 82% B0% E3% 83% A9% E3% 83% 9F% E3% 83% B3% E3% 82 Es gibt sogar ein Buch namens% B0-Al-Sweigart / dp / 487311778X). ↑ Ich bin kein Partner (nur für den Fall)

In diesem Artikel werde ich Ihnen zeigen, wie Sie solchen Python-Code ausführen, als wäre es ein Befehl!

Verfahren

Dieses Mal folgen wir den Schritten beim Erstellen eines Befehls zum Anzeigen der Dateiliste "Dateiliste". (So etwas wie ls)

Wenn Sie die Prozedur in einem Wort vorstellen möchten ** Geben Sie der Datei "Dateiliste", die den Python-Interpreter (`#! / Usr / bin / env python```) in Shebang angibt, die Ausführungsberechtigung und legen Sie die Datei im Pfad im gespeicherten Verzeichnis ab. Kann mit Dateiliste`` ausgeführt werden. ** **. Es ist wie es ist.

Der Implementierungsablauf ist unten dargestellt.

0. Prämisse

Es wird davon ausgegangen, dass Python bereits installiert ist und mit dem Befehl `` `python``` ausgeführt werden kann. Wenn Sie nach "Python Installation Linux" usw. suchen, werden verschiedene Methoden angezeigt. Bitte beziehen Sie sich darauf.

1. Erstellen Sie ein Skript

Erstellen Sie zunächst ein Skript, das ausgeführt werden soll. Erstellen Sie einen geeigneten Ordner und speichern Sie ihn darin.

  1. Erstellen Sie ein "pycommands" -Verzeichnis in Ihrem Home-Verzeichnis
mkdir ~/pycommands
  1. Wechseln Sie in das Verzeichnis "py command"
cd ~/pycommands
  1. Erstellen Sie eine Datei "Dateiliste" und gehen Sie zum Bearbeitungsbildschirm
vi filelist
  1. Bearbeiten Sie die Datei "Dateiliste"
#!/usr/bin/env python

import os
from pathlib import PATH

#Das Verzeichnis, in dem sich der Benutzer gerade befindet (os.getcwd()) Informationen bekommen
current_dir = PATH(os.getcwd())

# glob("*")Rufen Sie eine Liste der Dateien in dem Verzeichnis ab, in dem sich der Benutzer gerade befindet
for file in current_dir.glob("*"):
    print(file)

Das Wichtigste hier ist das `#! / Usr / bin / env python``` in der ersten Zeile. Dies wird als ** Shebang ** bezeichnet und gibt an, was zur Interpretation des Inhalts der Datei verwendet werden soll. Da hier Python angegeben ist, wird der Python-Code auch dann ausgeführt, wenn er nicht als `.py``` geschrieben ist. (Wenn Sie in diesem Teil Ruby usw. angeben, können Sie auch Ruby-Code ausführen.)

2. Erteilen Sie die Ausführungsberechtigung

Die soeben erstellte Datei "Dateiliste" ist noch keine Datei, die ausgeführt werden kann. Dazu müssen Sie der Datei ** Ausführungsberechtigungen ** erteilen.

Ausführungsberechtigung für eine Datei erteilen

chmod u+x ~/pycommands/filelist

Ausführen. (Es wird davon ausgegangen, dass "Dateiliste" unter "~ / pycommands /" erstellt wird. Wenn Sie sie an einem anderen Speicherort erstellen, ändern Sie den Befehl entsprechend.)

//qiita.com/shisama/items/5f4c4fa768642aad9e06)



 In diesem Zustand kann die Ausführung selbst bereits durchgeführt werden.
 An jedem Ort

```shell
~/pycommands/filelist

Wenn Sie den Befehl eingeben, sollte eine Liste der Dateien ausgegeben werden.

Im nächsten Schritt können Sie dies tun, indem Sie einfach "Dateiliste" eingeben.

3. Gehen Sie durch PATH

Machen Sie es dann möglich, diesen Befehl von überall aus auszuführen.

Um einen Befehl an einem bestimmten Ort von überall ausführen zu können, muss die Umgebungsvariable PATH festgelegt werden.

Grob gesagt ist PATH "eine Liste von Orten, an denen Sie nach einer ausführbaren Datei mit diesem Namen suchen müssen, wenn Sie einen ** Befehl eingeben (wahrscheinlich) **".

lsWenn ich den Befehl eingebe, wird der Pfad für eine ausführbare Datei mit dem Namen "ls" aufgerufen und die gefundene Datei ausgeführt. (Ich suche, während ich von vorne nacheinander auf die in PATH definierte Standortliste zugreife.)

Vorerst nur dieses Mal ausführen

export PATH='$PATH:$HOME/pycommands/'

Es ist in Ordnung, wenn Sie ausführen.

Um es die ganze Zeit benutzen zu können

echo export PATH='$PATH:$HOME/pycommands/' >> ~/.bashrc
source ~/.bashrc

Ist in Ordnung.

4. Lauf!

Wo auch immer du bist

filelist

Wenn Sie ausführen, wird eine Liste der Dateien angezeigt.

Wenn nicht ausgeführt

Es gibt bereits einen gleichnamigen Befehl

Wenn bereits ein Befehl mit demselben Namen vorhanden ist, ist der Befehl mit demselben Namen wie der in diesem Ablauf erstellte Befehl bereits vorhanden. Daher wird er zuerst im PATH gesucht und der erstellte Befehl wird nicht ausgeführt. (Weil ich am Ende von PATH ein Verzeichnis hinzugefügt habe)

Ändern Sie den Namen oder die Reihenfolge des Pfads so, dass er zuerst ausgeführt wird. (Nicht empfohlen)

Zusammenfassung

Lassen Sie uns einen Befehl geben, um die Arbeit bequemer zu machen ^^

Recommended Posts

Erstellen Sie Ihre eigenen Linux-Befehle in Python
[LLDB] Erstellen Sie Ihren eigenen Befehl mit Python
Erstellen Sie Ihre eigenen Big Data in Python zur Validierung
Erstellen Sie Ihr eigenes Random Dot Stereogram (RDS) in Python.
[Python] Anmelden Ihres eigenen Moduls
Verwenden Sie einfach Ihre eigenen Funktionen in Python
Holen Sie sich Ihre eigene IP-Adresse in Python
Erstellen Sie Ihre eigene Diagrammstrukturklasse und deren Zeichnung mit Python
Erstellen Sie Ihre eigene Ausnahme
Erstellen Sie Spatia Lite in Python
Importieren Sie Ihre eigenen Module mit der Python-Entwicklung von Grasshopper
Erstellen Sie in Python ein Paket mit globalen Befehlen
Memo zum Erstellen einer eigenen Box mit Peppers Python
Erstellen Sie eine Funktion in Python
Erstellen Sie ein Wörterbuch in Python
Nehmen Sie Ihre eigene maximale Speichernutzung in Linux & Python
Versuchen Sie, Ihr eigenes Intro-Quiz mit Python zu verbessern
Führen Sie Shell-Befehle in Python aus
[Blender x Python] Erstellen Sie Ihre eigene Funktion und Zusammenfassung
Verwenden Sie CASA Toolkit in Ihrer eigenen Python-Umgebung
Erstellen Sie Ihre erste GDSII-Datei in Python mit gdspy
Erstellen Sie Ihre eigene Django-Middleware
[Road to Intermediate Python] Definieren Sie in Ihrer eigenen Klasse
Versuchen Sie, Ihre eigenen Objekte mit Prioritätswarteschlangen in Python zu sortieren
[Python] Erstelle deinen eigenen LINE-Bot
Suchen Sie mit Python nach externen Befehlen
Machen Sie Ihr eigenes Handbuch. [Linux] [Mann]
8 häufig verwendete Befehle in Python Django
Erstellen Sie einen DI-Container mit Python
Behandeln Sie Daten in Linux-Bash-Befehlen
Erstellen Sie eine Binärdatei in Python
Erstellen Sie Google Mail in Python ohne Verwendung der API
[Linux] [Kernelmodul] Erstellen Sie kthread im Kernelmodul
Erstellen Sie Ihren eigenen Namensauflösungsdienst
[Django] Erstellen Sie Ihre eigene 403, 404, 500-Fehlerseite
Erstellen Sie eine Python-Projektdokumentation in Sphinx
Erstellen Sie eine zufällige Zeichenfolge in Python
Erstellen und lesen Sie Messagepacks in Python
Linux-Befehl
Linux-Befehle
Docker ausprobieren: Erstellen Sie Ihr eigenes Container-Image für eine Python-Web-App
Linux-Befehl
Erstellen Sie mit python3 eine Wortwolke aus Ihrem Tweet
Erstellen Sie ScriptableObject in Python, wenn Sie ADX2 erstellen
Suchen Sie nach Dateien wie Linux Find in Python
[Linux] Liste der in der Praxis verwendeten Linux-Befehle
Erstellen Sie mit Twisted Ihren eigenen DNS-Server
Erstellen Sie eine Python-Umgebung auf Ihrem Mac
[Python] Packen und verteilen Sie Ihre eigenen Module
Erstellen Sie eine einfache GUI-App in Python
Erstellen Sie mit SQLAlchemy Ihren eigenen zusammengesetzten Wert
Erstellen Sie Qt-Designerteile mit Python (PyQt)
[Python] Registrieren Sie Ihre eigene Bibliothek in PyPI
Bis Sie Ihre eigene Python-Bibliothek installieren