Rumah pembangunan bahagian belakang Tutorial Python Modul subprocess Python gagal melaksanakan perintah data WMIC. Bagaimana menyelesaikannya?

Modul subprocess Python gagal melaksanakan perintah data WMIC. Bagaimana menyelesaikannya?

Apr 01, 2025 pm 08:48 PM
python pelayar Penyelesaian

Modul subprocess Python gagal melaksanakan perintah data WMIC. Bagaimana menyelesaikannya?

Penyelesaian untuk gagal melaksanakan perintah wmic datafile dalam modul subprocess python

Ramai pemaju mungkin menghadapi masalah apabila melaksanakan arahan sistem menggunakan modul subprocess Python. Artikel ini menyelesaikan masalah yang sama: Perintah wmic datafile yang boleh dilaksanakan secara normal dalam command prompt (cmd.exe) tidak dapat memperoleh hasil yang diharapkan dalam modul subprocess Python.

Penerangan Masalah:

Cuba gunakan modul subprocess untuk melaksanakan arahan berikut untuk mendapatkan maklumat versi pelayar Chrome:

 WMIC Datafile Where Name = "C: \\ Program Files \\ Google \\ Chrome \\ Application \\ Chrome.exe" Dapatkan Versi /Nilai
Salin selepas log masuk

Dalam cmd.exe, arahan itu mengembalikan nombor versi dengan betul, sebagai contoh:

 <code>version=110.0.5481.178</code>
Salin selepas log masuk

Walau bagaimanapun, menggunakan modul subprocess Python untuk melaksanakan arahan yang sama, mengembalikan hasil kosong atau ralat.

Penyelesaian:

Masalahnya terletak pada pengendalian modul subprocess parameter perintah dan masalah pengekodan watak yang berpotensi. Coretan Python berikut menunjukkan cara melaksanakan arahan wmic datafile dan dapatkan hasilnya:

 Import subprocess

chrome_path = r "c: \\ Program Files \\ Google \\ Chrome \\ Application \\ Chrome.exe"
perintah = ["wmic", "datafile", "where", f "name = '{chrome_path}'", "get", "version", "/value"]
Cuba:
    hasil = subprocess.check_output (command, text = true, stderr = subprocess.pipe)
    versi = result.strip (). Split ('\ n') [1] .split ('=') [1] .split () # Nombor versi ekstrak
    cetak (f "versi krom: {versi}")
Kecuali subprocess.CalledProcessError sebagai E:
    cetak (f "ralat pelaksanaan perintah: {e}")
    cetak (f "stderr: {e.stderr}")
Kecuali indeksror:
    Cetak ("Tidak dapat menghuraikan maklumat versi dari output.")
Salin selepas log masuk

Penambahbaikan utama kod ini adalah:

  1. Gunakan f-string untuk pemformatan parameter: mengendalikan laluan lebih ringkas, mengelakkan kerumitan manual melarikan diri dan rentetan pemformatan.
  2. text=True : Tentukan text=True TELLS subprocess UNTUK MENGGUNAKAN MODE TEXT DAN MEMBUAT PROSES THE OUTPUT MATCHED.
  3. stderr=subprocess.PIPE : Menangkap output ralat standard untuk kesilapan debugging.
  4. Pengendalian ralat: Gunakan try...except blok untuk mengendalikan potensi subprocess.CalledProcessError dan IndexError untuk menyediakan lebih banyak kod yang mantap.
  5. Pengekstrakan Maklumat Versi: Mengurangkan hasil output, ekstrak nombor versi, dan elakkan bergantung pada butiran khusus format output.

Melalui pengubahsuaian ini, modul subprocess boleh melaksanakan arahan wmic datafile dan mengembalikan maklumat versi Chrome yang dijangkakan. Ini menyelesaikan masalah yang dapat dilaksanakan secara normal di cmd.exe tetapi tidak dapat memperoleh hasil dalam python. Mekanisme pengendalian ralat yang lebih baik juga menjadikan kod lebih mantap.

Atas ialah kandungan terperinci Modul subprocess Python gagal melaksanakan perintah data WMIC. Bagaimana menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1667
14
Tutorial PHP
1273
29
Tutorial C#
1255
24
Muat turun laman web rasmi aplikasi Exchange Ouyi untuk telefon bimbit Apple Muat turun laman web rasmi aplikasi Exchange Ouyi untuk telefon bimbit Apple Apr 28, 2025 pm 06:57 PM

Aplikasi Exchange OUYI menyokong memuat turun telefon bimbit Apple, lawati laman web rasmi, klik pilihan "Apple Mobile", dapatkan dan pasang di App Store, daftar atau log masuk untuk menjalankan perdagangan cryptocurrency.

WEASE OPEN DOOR OFFICE LAMAN WETORY Masuk WELIK OPEN DOOR OFER OFFICATION Masuk Terkini 2025 WEASE OPEN DOOR OFFICE LAMAN WETORY Masuk WELIK OPEN DOOR OFER OFFICATION Masuk Terkini 2025 Apr 28, 2025 pm 07:51 PM

Pintu Terbuka Sesame adalah platform yang memberi tumpuan kepada perdagangan cryptocurrency. Pengguna boleh mendapatkan portal melalui laman web rasmi atau media sosial untuk memastikan kesahihan sijil SSL dan kandungan laman web disahkan semasa akses.

OUYI Laman Web Pintu Masuk OUYI Pintu Terkini Rasmi 2025 OUYI Laman Web Pintu Masuk OUYI Pintu Terkini Rasmi 2025 Apr 28, 2025 pm 07:48 PM

Pilih platform perdagangan yang boleh dipercayai seperti OKEX untuk memastikan akses ke pintu masuk rasmi.

Pintu Masuk Laman Web Binance Binance Rasmi Masuk Terkini 2025 Pintu Masuk Laman Web Binance Binance Rasmi Masuk Terkini 2025 Apr 28, 2025 pm 07:54 PM

Lawati laman web rasmi Binance dan semak logo HTTPS dan Green Lock untuk mengelakkan laman web phishing, dan aplikasi rasmi juga boleh diakses dengan selamat.

Langkah -langkah untuk menambah dan memadam medan ke jadual mysql Langkah -langkah untuk menambah dan memadam medan ke jadual mysql Apr 29, 2025 pm 04:15 PM

Di MySQL, tambah medan menggunakan alterTabletable_nameaddcolumnnew_columnvarchar (255) afterexisting_column, memadam medan menggunakan altertabletable_namedropcolumncolumn_to_drop. Apabila menambah medan, anda perlu menentukan lokasi untuk mengoptimumkan prestasi pertanyaan dan struktur data; Sebelum memadam medan, anda perlu mengesahkan bahawa operasi itu tidak dapat dipulihkan; Mengubah struktur jadual menggunakan DDL dalam talian, data sandaran, persekitaran ujian, dan tempoh masa beban rendah adalah pengoptimuman prestasi dan amalan terbaik.

Kedudukan Pertukaran Kuantitatif 2025 Cadangan Top 10 untuk Aplikasi Perdagangan Kuantitatif Mata Wang Digital Kedudukan Pertukaran Kuantitatif 2025 Cadangan Top 10 untuk Aplikasi Perdagangan Kuantitatif Mata Wang Digital Apr 30, 2025 pm 07:24 PM

Alat kuantisasi terbina dalam pertukaran termasuk: 1. Binance: Menyediakan modul kuantitatif niaga hadapan Binance, yuran pengendalian yang rendah, dan menyokong urus niaga AI-dibantu. 2. OKX (OUYI): Menyokong Pengurusan Multi Akaun dan Routing Pesanan Pintar, dan menyediakan kawalan risiko peringkat institusi. Platform strategi kuantitatif bebas termasuk: 3. 4. Kuadensi: Perpustakaan Strategi Algoritma Tahap Profesional, menyokong ambang risiko yang disesuaikan. 5. PionEx: Strategi Preset 16 terbina dalam, yuran transaksi yang rendah. Alat domain menegak termasuk: 6. Cryptohopper: platform kuantitatif berasaskan awan, menyokong 150 petunjuk teknikal. 7. Bitsgap:

Aplikasi sembang langsung Laravel: websocket dan penolak Aplikasi sembang langsung Laravel: websocket dan penolak Apr 30, 2025 pm 02:33 PM

Membina aplikasi sembang secara langsung di Laravel memerlukan menggunakan WebSocket dan Penolak. Langkah -langkah khusus termasuk: 1) Konfigurasi maklumat penolak dalam fail .env; 2) tetapkan pemandu penyiaran dalam fail penyiaran.php kepada penolak; 3) melanggan saluran penolak dan mendengar peristiwa menggunakan Laravelecho; 4) Hantar mesej melalui API Pusher; 5) melaksanakan saluran peribadi dan pengesahan pengguna; 6) Melaksanakan pengoptimuman prestasi dan debugging.

Masalah apa yang akan anda hadapi semasa menggunakan Pilih asli di telefon anda? Masalah apa yang akan anda hadapi semasa menggunakan Pilih asli di telefon anda? Apr 30, 2025 pm 03:06 PM

Isu -isu dengan Pilih asli pada telefon bimbit apabila membangunkan aplikasi pada peranti mudah alih, kami sering menghadapi senario di mana pengguna perlu membuat pilihan. Walaupun sel asli ...

See all articles