1 回答

TA贡献1872条经验 获得超4个赞
我认为结果是返回多个可能的路径,这些路径由换行符分隔。如果将换行符打印到命令行,则换行符将被“隐藏”。您可以尝试这样做以显示其中有一个新行。find"\n"fmt.Println(stringPath + "hello, am I on a new line?")stringPath
请参阅下面的内容,其中使用类似版本的 find 查找 json 文件,然后用换行符拆分字符串,然后遍历这些路径。如果路径为空(可以是空白),则会跳过该路径。
package main
import (
"fmt"
"os/exec"
"strings"
)
func main() {
filePath, err := exec.Command("find", ".", "-name", "*.json").Output()
if err != nil {
panic(err)
}
stringPath := string(filePath)
paths := strings.Split(stringPath, "\n")
CatFile(paths)
}
func CatFile(filePaths []string) {
for _, path := range filePaths {
if len(path) == 0 {
continue
}
output, err := exec.Command("cat", path).Output()
if err != nil {
fmt.Println("Error!")
fmt.Println(err)
}
fmt.Println(string(output))
}
}
请参阅此相关问题,其中讨论了以下内容:Go lang 区分 “\n” 和换行符
- 1 回答
- 0 关注
- 133 浏览
添加回答
举报