"mv"를 사용하여 파일을 이동할 때 디렉토리의 setgid 비트를 통해 그룹 변경 사항을 어떻게 적용합니까?

"mv"를 사용하여 파일을 이동할 때 디렉토리의 setgid 비트를 통해 그룹 변경 사항을 어떻게 적용합니까?
$ mkdir test
$ chown gtgteq:users test
$ chmod g+s test
$ touch test/a
$ touch b
$ mv b test/
$ ls -l test
total 0
-rw-r--r-- 1 gtgteq users  0 a
-rw-r--r-- 1 gtgteq gtgteq 0 b

모바일 파일 그룹( b)을 자동으로 변경하는 방법은 무엇입니까?

답변1

마지막으로 bash 함수를 작성했습니다.

mvs() {
  local dest
  if [[ $# -ne 2 ]]; then
    return 1
  fi
  if [[ -d $2 ]]; then
    dest="$2/$(basename $1)"
  else
    dest="$2"
  fi
  mv "$1" "$2" || return $?
  chown "$USER":users -R "$dest"
  chmod g+rw -R "$dest"
  find "$dest" -type d -exec chmod g+xs {} ';'
}

관련 정보