Q:

Golang program to execute a specified shell command without options

0

Here, we will execute a specified command without any option using the syscall.Exec() function. And, we will execute the "ls" shell command and print output on the console screen.

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program/Source Code:

The source code to execute a specified shell command without options is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

// Golang program to execute specified
// shell command without options

package main

import "os"
import "os/exec"
import "syscall"

func main() {
	command, err := exec.LookPath("ls")
	if err != nil {
		panic(err)
	}

	args := []string{"ls"}

	err = syscall.Exec(command, args, os.Environ())
	if err != nil {
		panic(err)
	}
}

Output:

bin
dev
etc
home
lib
lib64
proc
root
sys
tmp
tmpfs
usr
var

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the required packages to predefined functions.

In the main() function, we checked "ls" command exists or not, using the exec.LookPath() function and get the handle for the command. After that, we executed the specified command using the syscall.Exec() function and print the output of the "ls" command on the console screen.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

This question belongs to these collections

Similar questions


need a help?


find thousands of online teachers now