여러 사용자를 위해 .bashrc 파일을 복사하는 방법은 무엇입니까? 솔라리스에서

여러 사용자를 위해 .bashrc 파일을 복사하는 방법은 무엇입니까? 솔라리스에서

이 스크립트를 사용했습니다

#!/bin/bash
X='$( cat etc/passwd | cut -f1 -d: )' #All-users
For X in /export/home/*/.bashrc ; do
  echo "$HOME/.profile'" >> $X
  $X 2>/dev/null
done
source $X
exit 0

그런데 오류가 발생하여 원하는 내용이 인쇄되지 않았습니다.

./ja1.sh: line 3: syntax error near unexpected token `do'

./ja1.sh: line 3: `For X in /export/home/*/.bashrc ; do '

이 스크립트를 사용하는 주요 목적은 루트 사용자의 스크립트를 사용하여 모든 사용자의 파일을 한 번에 인쇄하는 것입니다 $HOME/.profile. .bashrc스크립트를 시도했는데 한 명의 사용자에게만 작동합니다.

echo "$HOME/.profile" >> /export/home/test/.bashrc

답변1

스크립트를 실행하면 여러 오류가 발견됩니다 shellcheck.

그런 다음 문제를 여러 부분으로 나눕니다.

  • 사용자 홈 디렉터리 목록을 가져오는 함수를 만듭니다.
  • 사용자 홈 디렉터리 목록이 주어지면 파일을 복사하는 함수를 만듭니다.
  • 위의 내용을 결합하여 프로그램을 만듭니다.

먼저 이 작업을 수행하고 여전히 문제가 있으면 다시 방문하세요.

관련 정보