Python 是一種複雜的現代編程語言。它易於學習,因此特別受初學者歡迎。 Python 非常強大,可以用來與操作系統進行交互。 Linux 使用 python 作為 bash 腳本的替代命令語言。它預裝在大多數發行版中,因為它依賴於許多工具和軟件。如果沒有,它也很容易安裝。

本教程向您展示如何使用 Python 運行 Linux 命令。這背後的想法是自動化任務並節省時間。本教程使用 Ubuntu。

使用源碼在 Debian/Ubuntu 上安裝最新的 Python。

先決條件

需要 Python 環境。如果您使用的是現代發行版,則它已預先安裝。您可以使用以下命令進行檢查:

❯ python3 --version

要安裝 Python,請運行以下命令 –

❯ sudo apt install python3 -y

此外,終端和一些 Linux 命令的知識會很棒。

Python 操作系統模塊

操作系統庫提供基於操作系統的功能並允許您與操作系統交互。該軟件包附帶 Python 安裝,因此您無需單獨安裝。該庫易於使用,包括讀寫操作。

讓我們編寫我們的第一個程序來獲取系統信息 –

啟動你最喜歡的文本編輯器(我用 編輯) –

gedit system_info.py

複製以下代碼並保存文件 –

import os

os.uname()

您可以按如下方式運行文件 –

python3 system_info.py

輸出

獲取系統信息

這個 uname() 該方法返回當前操作系統的名稱、版本、版本等信息。這只是操作系統模塊的概述。現在讓我們運行一個終端命令。

os.system()

這個 os.system() 該方法將命令作為字符串並在子shell 中執行。限制與 system() C語言方法。該方法取決於您的系統。

您應該使用終端來運行您的代碼,就好像您在 IDLE 中運行它一樣。 “0” 作為輸出,它並沒有真正發生。

操作系統模塊 Python沒有輸出

讓我們運行第一個命令 –

import os

os.system('ls')

輸出

在 Python 中運行 Linux 命令列出文件和文件夾

ls 命令用於列出相應目錄中的項目。

接受 Linux 命令作為用戶輸入

讓我們從用戶那裡獲取輸入並將其連接成一個命令。 為了我: 在從用戶那裡獲取文件夾名稱的同時創建一個文件夾。

代碼

import os
name = input("Enter a folder name : ")
print("n")
os.system('mkdir ' + name)

輸出

在 Python 中創建一個文件夾做一個文件夾

使用 Python 運行 Linux 命令的完整代碼

我創建了一個簡單的腳本來向您展示如何使用 Python 使事情變得更簡單。

import os

while (True):
    print("1) List Directories")
    print("2) Create a file")
    print("3) Create a directory/folder")
    print("4) Ping a server")
    print("5) Neofetch")
    print("6) Check Python Version")
    print("7) Check Java Version")
    print("8) Exit")

    ch = int(input("Enter Your Choice : "))

    if ch == 1:
        os.system('lsd')
    elif ch == 2:
        f_name = input("Enter file name : ")
        e_name = input("Enter file extension : ")

        os.system('touch ' + f_name + '.' + e_name)
    elif ch == 3:
        name = input("Enter folder name : ")
        os.system('mkdir ' + name)

    elif ch == 4:
        s = input("Enter address(Press enter for default - google.com) : ")
        p = input("Enter number of packer(press enter for default - 10 : )")
        o = input("Do you want the output in a txt file -- y | n -- :")

        # p = int(p)

        if (s == ''):
            s="google.com"
        if (p == ''):
            p = '10'

        if (o == 'y'):
            os.system('ping ' + s + ' -c ' + p + ' > ping-output.txt')
        else:
            os.system('ping ' + s + ' -c ' + p)

    elif ch == 5:
        os.system('neofetch')

    elif ch == 6:
        os.system('python --version')

    elif ch == 7:
        os.system('java --version')

    elif ch == 8:
        break
    else:
        print("Invalid Choice")

這將向用戶顯示一個菜單,他們必須選擇其中一個選項。由於腳本在 while 循環中,因此菜單會不斷地呈現給用戶。您可以在菜單中添加更多選項。

輸出

所有腳本所有腳本

包起來!

這只是操作系統模塊的一小部分。它有更多的功能和方法。您可以在 shell 配置文件中設置您開發的腳本的路徑。這允許您從任何地方運行腳本。還要創建一個不時自動運行的 cron 作業。我希望你覺得這篇文章有用。

您可能感興趣的文章

  • 用 10 行或更少的代碼創建一個反向 Python shell
  • 如何使用 Cronjob 配置自動更新?
  • 如何在 Linux 中每 X 秒運行一次命令?