그래서 "scripts"라는 하위 폴더에서 스크립트를 읽어야하는 응용 프로그램을 만들려고합니다.
Directory.GetCurrentDirectory()가 Linux에서 작동하지 않습니까?
string script = Console.ReadLine();
string path = Directory.GetCurrentDirectory();
string sciptpath = path + "/scripts/" + script;
이 Windows에서 잘 작동 : 내 코드는 내가 문제가 있습니다. 그러나 Linux (Mono Runtime을 사용하여 실행)에서는 실행 파일의 디렉토리가 아니라 현재 사용자 홈 디렉토리로 이동합니다. 이거 버그 야? 누군가가 대안을 제안 할 수 있습니까?
는 http://www.mono-project.com/Compatibility에 대한 모노 호환성을 확인 했습니까? .Net 응용 프로그램을 Mono (http://www.mono-project.com/MoMA)로 이식 할 때 발생할 수있는 문제점을 식별하는 데 도움이되는 Mono Migration Analyzer (MoMA) 도구를 사용해 볼 수도 있습니다. –
문제/질문은 아니지만 경로를 연결하지 말고 대신 Path.Combine을 사용하십시오. string scriptpath = Path.Combine (path, "scripts", script); - 그것은 윈도우와 리눅스 모두에서 올바르게 작동 할 것입니다. –