A simple Go program to find file extension in the current folder. I have used flags, path/filepath and OS packages to get desired output.
package main
import (
"flag"
"fmt"
"os"
"path/filepath"
)
func walkpath(path string, f os.FileInfo, err error) error {
if filepath.Ext(path) == ".go" {
fmt.Printf("%s", path)
}
fmt.Printf(" File Extension is %s n", filepath.Ext(path))
return nil
}
func main() {
flag.Parse()
root := flag.Arg(0) // 1st argument is the directory location
filepath.Walk(root, walkpath)
}
Output
GoSublime r14.12.06-1 9o: type `help` for help and command documentation
[ `go run readdirwalk.go ./` | done: 766.5595ms ]
File Extension is
File Extension is .md
concurrency.go File Extension is .go
email-go.go File Extension is .go
email.go File Extension is .go
File Extension is .txt
imdb.go File Extension is .go
readdirwalk.go File Extension is .go
reverse-test.go File Extension is .go
seed.go File Extension is .go
[ ~/ownCloud/Documents/scripts/Go/src/github.com/mkarthikworld/karthikworld/ ] #