홈 디렉터리이고 내에서 어떻게 다운로드합니까 자의적 준비되기까지 grail? # 39 의 it& Linux 에서 자주 / home / 사용자. 그러나 일부 OS& # 39 의 오픈솔라리스, 예를 들어, 같은 경로는 / export / home / 사용자.
일반적으로 기술서임을 사용할 수 있습니다
String userHome = System.getProperty( "user.home" );
사용자 afaq 홈 디렉터리입니다 모든 플랫폼에서. [GetProperty] [1] 다른 문서의 내용을 볼 수 있는 방법을 지켜보리니 얻을 수 있습니다.
있을 수 있다. [이] [2] 해결하십시오 사용하여 액세스 문제를 방지할 수 있습니다 (보안 정책을 사용하는 파일)
[1]: http://java.sun.com/j2se/1.5.0/docs/api/java/lang/System.html # getProperty (자바드란g. 스트레이) [2]: # 277287 https://stackoverflow.com/questions/277100/accesscontrolexception-when-attempting-to-delete-a-file/277287
할 수 없는 경우 하드 코드, 사용자 이름을 쓰고 있는 이 문제가 될 수 있습니다. '에코' 내 홈 디렉터리 경로가 합니다 ~ 브루노스키 당신에게 말할 것이다 ',' / home / 브루노스키 하지만 와일드링이 브루노스키 는 변수? 만약 당신이 그렇게 'name = 브루노스키. echo $ name '확보하십시오 브루노스키' '~ ~
이것은 실제 사례 및 솔루션:
# Up near the top of your script add
export HOME=$(bash <<< "echo ~${SUDO_USER:-}")
# Then you can use $HOME like you would expect
cat rsa_key.pub >> $HOME/.ssh/authorized_keys
O 노운세트 설정할 수 있는 ',' 를 사용하는 경우 사용해야 , 변수 $ {}, 여기서 '참조' - '는 기본적으로 SUDO_USER: SUDO_USER $ $ {}' 공백 '또는' SUDO_USER 제공할 것이라고 오류 (때문에 설정하지 않은) 를 통해 실행하십시오 않을 경우 'sudo'.
내가 solaris. 찾으려는 홈 디렉터리이고 다른 사용자가. &Quot 가져오는 것은 user.home"; 가장 쉬운 방법은 속성 약간만이라도 현재 사용자의 홈 디렉터리입니다.
It takes a 다소 finesse 와 사용자 임의 afaq 홈 디렉터리인 명령줄이:
String[] command = {"/bin/sh", "-c", "echo ~root"}; //substitute desired username
Process outsideProcess = rt.exec(command);
outsideProcess.waitFor();
String tempResult;
StringBuilder sb = new StringBuilder();
while((tempResult = br.readLine()) != null) sb.append(tempResult);
br.close();
return sb.toString().trim();
이제 우리가 기술적으로, stdout 그리고 stderr 버퍼를 don& # 39 를 기다리는 동안 스레드할 있어야 합니다 그래서 t fill up, up the 프로세스 및 잠급니다 있지만, 적어도 희망을 가질 수 있는지; d # 39 I& 버퍼를 단일 sername. 또한 그 결과가 있는지 확인할 수 있습니다 ~ 그냥 시작하여 루트 (또는 있는모든 sername 사용한) 가 있을 수 있도록 사용자 및 it 평가하실 것입니다.
도움이 되길 바란다. 이 질문에 대해 투표를 할 경우, 새로운 # 39 m 로 않니다 I& 기여하기 위해 SO 에 사용할 수 있다는 점.
(예를 들어, # 39, & # 39 /home&, 이 우저드리 접미어입니다. # 39, & # 39 또는 /export/home&;) 구성 항목 될 수 있다. 그런 다음 앱 덮어쓰기/추가 임의 사용자 이름) 이 길을 수 있습니다.
경고: # 39 이 doesn& 지능적으로 상호 작용할 수 있기 때문에, t, d # 39 OS you& 아웃해야 운빨이야 마치 Windows 시스템,) 또는 (unix) 를 통해 서로 다른 드라이브에 있는 레이아웃용 우저디스 같은 홈 디렉터리 / home / f /, / home / b/bar foo.