func echoIfTool()

in tools/echo.go [27:66]


func echoIfTool() error {
	flags := flag.NewFlagSet("echoif", flag.ContinueOnError)
	flags.Usage = printEchoIfUsage

	showHelp := flags.Bool("h", false, "Show help")

	if err := flags.Parse(os.Args[1:]); err != nil {
		return err
	}

	if *showHelp {
		flags.Usage()
		return nil
	}

	if flags.NArg() != 2 {
		flags.Usage()
		return nil
	}

	a := flags.Arg(0)
	b := flags.Arg(1)

	cmd := exec.Command("sh", "-c", "echo $?")
	exitCode, err := cmd.Output()
	if err != nil {
		return err
	}

	// Trim any newline characters from the exit code
	exitCode = exitCode[:len(exitCode)-1]

	// Check if the exit code is 0 and print the corresponding value
	if string(exitCode) == "0" {
		fmt.Println(a)
	} else {
		fmt.Println(b)
	}
	return nil
}