Rumah > pembangunan bahagian belakang > Golang > Mengapakah `exec.Command('del', ...) ` Gagal dalam Golang pada Windows dan Bagaimana Saya Boleh Membetulkannya?

Mengapakah `exec.Command('del', ...) ` Gagal dalam Golang pada Windows dan Bagaimana Saya Boleh Membetulkannya?

Susan Sarandon
Lepaskan: 2024-12-29 02:23:11
asal
533 orang telah melayarinya

Why Does `exec.Command(

Melaksanakan Perintah Windows dalam Golang: Menyelesaikan masalah 'del' Executable Not Found Ralat

Percubaan anda untuk melaksanakan perintah "del" menggunakan exec. Command("del", "c:\aaa.txt") dalam Golang menghasilkan mesej ralat yang menunjukkan bahawa fail boleh laku tidak ditemui dalam laluan sistem.

Tidak seperti sistem pengendalian lain, Windows mempunyai arahan terbina dalam yang tidak tersedia sebagai boleh laku kendiri. Arahan ini dilaksanakan melalui Command Prompt (cmd.exe). Untuk melaksanakan arahan ini dalam Golang, anda perlu menggunakan awalan "cmd /c".

Coretan kod berikut menunjukkan cara melaksanakan perintah "del" dengan betul dalam Windows menggunakan Golang:

package main

import (
    "fmt"
    "os/exec"
    "runtime"
)

func main() {
    var c *exec.Cmd

    switch runtime.GOOS {
    case "windows":
        c = exec.Command("cmd", "/C", "del", "D:\a.txt")

    default: // Mac & Linux
        c = exec.Command("rm", "-f", "/d/a.txt")
    }

    if err := c.Run(); err != nil {
        fmt.Println("Error:", err)
    }
}
Salin selepas log masuk

Dalam coretan kod ini:

  • Kami menggunakan masa jalan suis.GOOS untuk menentukan sistem pengendalian.
  • Untuk Windows ("windows"), kami menggunakan awalan "cmd /C" sebelum arahan, diikuti dengan arahan itu sendiri dan hujahnya.
  • Untuk sistem pengendalian lain ( Mac dan Linux), kami menggunakan arahan "rm" dan bukannya "del".

Kod ini akan melaksanakan arahan "del" dengan betul dalam Windows dan memadamkan fail yang ditentukan, manakala percubaan sebelumnya untuk melaksanakan "del" secara langsung akan gagal.

Atas ialah kandungan terperinci Mengapakah `exec.Command('del', ...) ` Gagal dalam Golang pada Windows dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan