Open practice opened 4 years ago
일반적으로 Java에서 파일 읽는 방법으로는 제대로 동작하지 않는다.
Clojure에서 (slurp "/proc/version") 호출을 하게 되면 오류가 발생한다. 원인은 java 내부적으로 stat 시스템 호출을 사용하는데, /proc 파일의 경우 크기가 0이 된다고 한다. 해결 방법은 다름 코드를 참고하자.
(slurp "/proc/version")
아래는 "/proc/version" 파일을 읽어서 "microsoft"라는 문자열이 있으면 WSL이라고 판단하는 코드이다.
(defn is-wsl? [] #_(slurp "/proc/version") ; proc file cannot be read (-> (java.net.URI. "file:///proc/version") java.nio.file.Path/of java.nio.file.Files/lines .findFirst .get string/lower-case (string/index-of "microsoft")))
https://github.com/Doc-Cirrus/proctree 참고함
일반적으로 Java에서 파일 읽는 방법으로는 제대로 동작하지 않는다.
Clojure에서
(slurp "/proc/version")
호출을 하게 되면 오류가 발생한다. 원인은 java 내부적으로 stat 시스템 호출을 사용하는데, /proc 파일의 경우 크기가 0이 된다고 한다. 해결 방법은 다름 코드를 참고하자.아래는 "/proc/version" 파일을 읽어서 "microsoft"라는 문자열이 있으면 WSL이라고 판단하는 코드이다.