Home »
Golang »
Golang Programs
Golang program to execute a specified shell command without options
Here, we are going to learn how to execute a specified shell command without options in Golang (Go Language)?
Submitted by Nidhi, on May 30, 2021 [Last updated : March 05, 2023]
Executing a specified shell command without options in Golang
Problem Solution:
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.
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 code to execute a specified shell command without options
// 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.
Golang Shell Script Programs »