1 개요[ | ]
- Go Glob()
2 yaml & yml[ | ]
Go
Copy
package main
import (
"fmt"
"os/exec"
"path/filepath"
)
func init() {
exec.Command("touch", "/tmp/hello.yaml").Run()
exec.Command("touch", "/tmp/world.yml").Run()
}
func main() {
files, _ := filepath.Glob("/tmp/*.y*ml")
fmt.Println(files)
}
Loading
3 ** not working[ | ]
Go
Copy
package main
import (
"fmt"
"os"
"os/exec"
"path/filepath"
)
func init() {
os.MkdirAll("/tmp/aaa/bbb/ccc", 0755)
exec.Command("touch", "/tmp/111.yaml").Run()
exec.Command("touch", "/tmp/aaa/222.yaml").Run()
exec.Command("touch", "/tmp/aaa/333.yml").Run()
exec.Command("touch", "/tmp/aaa/bbb/444.yaml").Run()
exec.Command("touch", "/tmp/aaa/bbb/555.yaml").Run()
}
func main() {
files1, _ := filepath.Glob("/tmp/*/*.y*ml")
files2, _ := filepath.Glob("/tmp/**/*.y*ml")
files3, _ := filepath.Glob("/tmp/***/*.y*ml")
fmt.Println(files1) // [/tmp/aaa/222.yaml /tmp/aaa/333.yml]
fmt.Println(files2) // [/tmp/aaa/222.yaml /tmp/aaa/333.yml]
fmt.Println(files3) // [/tmp/aaa/222.yaml /tmp/aaa/333.yml]
}
Loading
Go
Copy
package main
import (
"fmt"
"os"
"os/exec"
"path/filepath"
)
func init() {
os.MkdirAll("/tmp/aaa/bbb/ccc", 0755)
exec.Command("touch", "/tmp/111.yaml").Run()
exec.Command("touch", "/tmp/aaa/222.yaml").Run()
exec.Command("touch", "/tmp/aaa/333.yml").Run()
exec.Command("touch", "/tmp/aaa/bbb/444.yaml").Run()
exec.Command("touch", "/tmp/aaa/bbb/555.yaml").Run()
}
func main() {
files1, _ := filepath.Glob("/tmp/*.y*ml")
files2, _ := filepath.Glob("/tmp/*/*.y*ml")
files3, _ := filepath.Glob("/tmp/*/*/*.y*ml")
files := []string{}
files = append(files, files1...)
files = append(files, files2...)
files = append(files, files3...)
fmt.Println(files1) // [/tmp/111.yaml]
fmt.Println(files2) // [/tmp/aaa/222.yaml /tmp/aaa/333.yml]
fmt.Println(files3) // [/tmp/aaa/bbb/444.yaml /tmp/aaa/bbb/555.yaml]
fmt.Println(files) // [/tmp/111.yaml /tmp/aaa/222.yaml /tmp/aaa/333.yml /tmp/aaa/bbb/444.yaml /tmp/aaa/bbb/555.yaml]
}
Loading
Go
Copy
package main
import (
"fmt"
"os"
"os/exec"
"path/filepath"
)
func init() {
os.MkdirAll("/tmp/aaa/bbb/ccc", 0755)
exec.Command("touch", "/tmp/111.yaml").Run()
exec.Command("touch", "/tmp/aaa/222.yaml").Run()
exec.Command("touch", "/tmp/aaa/333.yml").Run()
exec.Command("touch", "/tmp/aaa/bbb/444.yaml").Run()
exec.Command("touch", "/tmp/aaa/bbb/555.yaml").Run()
}
func main() {
files1, _ := filepath.Glob(filepath.Join("/", "tmp", "*.y*ml"))
files2, _ := filepath.Glob(filepath.Join("/", "tmp", "*", "*.y*ml"))
files3, _ := filepath.Glob(filepath.Join("/", "tmp", "*", "*", "*.y*ml"))
files := []string{}
files = append(files, files1...)
files = append(files, files2...)
files = append(files, files3...)
fmt.Println(files1) // [/tmp/111.yaml]
fmt.Println(files2) // [/tmp/aaa/222.yaml /tmp/aaa/333.yml]
fmt.Println(files3) // [/tmp/aaa/bbb/444.yaml /tmp/aaa/bbb/555.yaml]
fmt.Println(files) // [/tmp/111.yaml /tmp/aaa/222.yaml /tmp/aaa/333.yml /tmp/aaa/bbb/444.yaml /tmp/aaa/bbb/555.yaml]
}
Loading
4 같이 보기[ | ]
편집자 Jmnote
로그인하시면 댓글을 쓸 수 있습니다.