[go] 경로 비교

이번에는 Go 언어에서 경로를 비교하는 방법에 대해 알아보겠습니다.

현재 디렉토리 가져오기

현재 실행 중인 프로그램의 디렉토리를 가져오려면 os 패키지를 사용합니다.

예를 들어,

package main

import (
	"fmt"
	"os"
)

func main() {
	dir, err := os.Getwd()
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println("Current directory:", dir)
}

이 코드를 실행하면, 현재 디렉토리의 경로가 출력됩니다.

경로 비교

Go 언어에서는 path/filepath 패키지를 사용하여 경로를 비교할 수 있습니다.

예를 들어,

package main

import (
	"fmt"
	"path/filepath"
)

func main() {
	path1 := "/usr/local/bin"
	path2 := "/usr/local/go"

	fmt.Println("Is path1 and path2 the same?", path1 == path2) // false

	base1 := filepath.Base(path1)
	base2 := filepath.Base(path2)

	fmt.Println("Are the base names the same?", base1 == base2) // true
}

따라서 이 코드에서는 path1path2의 전체 경로를 비교하고, base1base2의 기본 경로를 비교합니다.

결론

Go 언어에서는 os 패키지를 사용하여 현재 디렉토리를 가져오고, path/filepath 패키지를 사용하여 경로를 비교할 수 있습니다. 이를 통해 경로를 비교하고, 필요한 처리를 수행할 수 있습니다.