|
|
@@ -0,0 +1,35 @@
|
|
|
+package main
|
|
|
+
|
|
|
+import (
|
|
|
+ "fmt"
|
|
|
+ "os"
|
|
|
+ "os/exec"
|
|
|
+ "strings"
|
|
|
+ "syscall"
|
|
|
+)
|
|
|
+
|
|
|
+// Run the given command, showing output.
|
|
|
+func run_command(command []string) error {
|
|
|
+ fmt.Println(strings.Repeat("=", 50))
|
|
|
+ fmt.Println(command)
|
|
|
+ cmd := exec.Command(command[0], command[1:]...)
|
|
|
+ // Connections
|
|
|
+ cmd.Stdout = os.Stdout
|
|
|
+ cmd.Stderr = os.Stderr
|
|
|
+ cmd.Stdin = os.Stdin
|
|
|
+
|
|
|
+ cmd.SysProcAttr = &syscall.SysProcAttr{}
|
|
|
+ cmd.SysProcAttr.Credential = &syscall.Credential{Uid: 0, Gid: 0}
|
|
|
+ err := cmd.Run()
|
|
|
+ fmt.Println(strings.Repeat("=", 50))
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("Command failed:", err)
|
|
|
+ }
|
|
|
+ return err
|
|
|
+}
|
|
|
+
|
|
|
+func main() {
|
|
|
+ run_command([]string{"apt", "update"})
|
|
|
+ run_command([]string{"apt", "upgrade", "-y"})
|
|
|
+ fmt.Println("Done")
|
|
|
+}
|