SAMBA의 파일을 새로 고치는 방법/시기에 대한 질문이 있습니다.
나는 비슷한 일을하고 있습니다 :
me@server:~/test/application
me@server:~/test/application$ dotnet myapp.dll
Application prints hello world
이제 폴더를 삭제하고 새 응용 프로그램과 동일한 위치에 동일한 폴더를 삽입하기 위해 (연결을 통해 이동 )을 application
사용하고 있습니다.Windows
SAMBA
/test/application/
이제 동일한 경로에 남아 있는 Linux 터미널(SSH를 통해 연결됨)로 돌아가서 다음을 사용 하고 싶습니다.
dotnet myapp.dll
결과 :
System.IO.FileNotFoundException: Unable to find the specified file.
at Interop.Sys.GetCwdHelper(Byte* ptr, Int32 bufferSize)
at Interop.Sys.GetCwd()
at System.Environment.get_CurrentDirectory()
at System.IO.Directory.GetCurrentDirectory()
at Microsoft.DotNet.Cli.Utils.CommandResolver.TryResolveCommandSpec(ICommandResolverPolicy commandResolverPolicy, String commandName, IEnumerable`1 args, NuGetFramework framework, String configuration, String outputPath, String applicationName)
at Microsoft.DotNet.Cli.Utils.Command.Create(ICommandResolverPolicy commandResolverPolicy, String commandName, IEnumerable`1 args, NuGetFramework framework, String configuration, String outputPath, String applicationName)
at Microsoft.DotNet.Cli.Utils.Command.Create(String commandName, IEnumerable`1 args, NuGetFramework framework, String configuration, String outputPath, String applicationName)
at Microsoft.DotNet.Cli.Program.ProcessArgs(String[] args, ITelemetry telemetryClient)
at Microsoft.DotNet.Cli.Program.Main(String[] args)
지원서에 문제가 있는 것 같습니다만,
목록 파일을 사용하면 ls
아무 것도 표시되지 않습니다. 폴더가 비어 있는 것과 같습니다.
하지만 작업을 마친 후에는 cd ..
모든 것이 cd application
잘 작동합니다. (ls는 내 파일을 나열하고 응용 프로그램은 잘 작동합니다.)
기본적으로 "폴더 새로 고침"이 필요하지만 그 이유는 무엇입니까?
친구가 "이전 디스크 Inode가 로드된 이전 폴더 세션"과 같은 것이 있다고 말했습니다.
답변1
Linux 또는 Unix에서는 프로세스에 의해 아직 열려 있는 파일이나 디렉터리를 삭제할 수 있습니다.
귀하의 경우 쉘에는 여전히 이전 /test/application
열린 디렉토리가 현재 디렉토리로 있습니다.
application
삼바를 사용하면 상위 디렉토리의 모든 파일과 디렉토리 항목이 삭제됩니다 /test
. 디렉토리의 inode는 여전히 쉘에서 사용 중이며 쉘은 이 현재 디렉토리를 하위 프로세스(예: )에 전달합니다 ls
. ls
이전 카탈로그 파일에서 파일을 삭제했기 때문에 파일이 올바르게 나열되지 않습니다 /test/application
.
cd application
in을 사용하면 /test
새로 생성된 ./test
application
/test/application
당신은 또한 볼 수 있습니다https://stackoverflow.com/q/2028874/10622916