프로세스의 현재 작업 디렉터리 변경

프로세스의 현재 작업 디렉터리 변경

프로세스의 현재 작업 디렉터리를 변경할 수 있나요?

예를 들어, PID가 1000인 프로세스를 실행하고 있습니다. 이제 현재 작업 디렉토리는 입니다 ~. 현재 작업 디렉토리를 으로 변경하고 싶습니다 ~/1. 어떻게 해야 합니까?

답변1

다음 스크립트를 사용할 수 있습니다(여기에서 발견)

#!/bin/bash

pid="$1" # first arguvment is the PID
cwd="$2" # second argument is the target working directory

# now let's command the GNU debugger
gdb -q <<EOF
  attach $pid
  call (int) chdir("$cwd")
  detach
  quit
EOF

PID를 첫 번째 인수로 전달하고 대상 작업 디렉터리를 두 번째 인수로 전달하여 호출합니다.

참고: 이로 인해 파일이 닫히고 쉘 프롬프트에 잘못된 정보가 제공되는 등 대상 프로세스에 의도하지 않은 결과가 발생할 수 있습니다.

gdb또한 (분명히) 설치 해야 합니다 .

관련 정보