Lakukan program baris arahan di C# dan dapatkan hasil STDout mereka
Program garis pelaksanaan di C# sangat berguna untuk tugas automasi atau mengintegrasikan alat luaran ke dalam aplikasi. Cabaran umum adalah hasil pengambilan pengambilan semula.
Atas sebab ini, anda boleh menggunakan kelas
di ruang nama . Jenis ini membolehkan anda membuat dan mengurus sub -proses. System.Diagnostics
Langkah langkah langkah dan carian stdout Process
Buat contoh proses baru. Gunakan pembina kelas untuk memberi insteriate objek.
Konfigurasi parameter pelaksanaan proses. - Tetapkan atribut proses untuk mengkonfigurasi tingkah laku pelaksanaannya. Sebagai contoh, anda boleh menentukan laluan baris arahan yang anda mahu laksanakan.
Process
Lumpuhkan pelaksanaan shell. Secara lalai, C# menggunakan shell untuk melaksanakan program baris arahan. Untuk mengelakkan masalah yang berpotensi, tetapkan - ke .
StartInfo
Tetapkan semula ke output standard. FileName
dengan menetapkan ke untuk membolehkan output standard untuk mengulangi arah. Ini membolehkan anda membaca outputnya apabila sub -proses ditulis ke dalam konsol. -
Proses promoter. Panggil kaedah untuk menggunakan proses promoter parameter pelaksanaan konfigurasi.
UseShellExecute
false
Baca hasil STDOUT. Sebelum menunggu sub -proses untuk keluar, gunakan atribut - untuk membaca output sub -proses sebagai rentetan. Anda kemudian boleh menggunakan rentetan ini untuk memaparkan atau memproses hasil yang diperlukan.
Menunggu sub -proses selesai.
RedirectStandardOutput
Selepas membaca hasil STDout, hubungi kaedah true
untuk menunggu sub -proses selesai.
-
kod sampel
Start()
Serpihan kod berikut menunjukkan cara melaksanakan program baris perintah (diff dalam contoh ini) dan mengambil hasil stdoutnya: -
dengan mengikuti langkah -langkah ini, anda boleh melaksanakan program baris arahan dan mengakses hasil output standardnya, supaya anda dapat mengautomasikan tugas dan meningkatkan fungsi aplikasi C#.
StandardOutput
Atas ialah kandungan terperinci Bagaimanakah saya dapat melaksanakan program baris arahan di C# dan mengambil hasil STDout mereka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!