[완료] 리눅스 문자열 치환
글쓴이: artop0420 / 작성시간: 금, 2010/01/08 - 9:42오전
우선 제 소개를 하면 스크립트를 막 시작했고요. 실력으 바닥입니다..ㅋㅋ
구글하고 네이버에도 열심히 찾았는데 답이 없군요. T.T 스크립트 책도 사서 보고 있긴한데 제가 필요한 부분만 빼고 모두 나와있는 느낌입니다.
passwd 파일 내용중에 root 사용자만 /bin/bash를 /bin/csh/ 로 하려고 하거든요.
sed 하고 awk를 가지고 하다가 경로를 잘못잡았는지 모든 테스트파일이 /bin/csh바뀐 증상을 느끼고 지쳐서 써봅니다.T.T
인터넷에 보고 살짝 수정한게 이정도일것 같은데
find /etc -name "passwd" -exec perl -pi -e 's/\/bin\/bash/\/bin\/csh/g' {} \;
이렇게 하면 /bin/bash을 가지고 있는 사용자가 모두 /csh 로 변경이 되서요
제가 원하는건 root사용자만 변경을 원하는건데 변경할 수있는 방법이 있을까요?
Forums:
정규표현식이나
정규표현식이나 스크립트 언어에 대한 질문이 아니라 '사용자의 shell을 바꾸고 싶은데?' 라는 질문이라면,
man chsh
OTL
감사합니다만/.
감사합니다만. chsh의 명령어의 경우 root계정으로 로그인한 후에 명령어를 사용하면 가능하겠지만.
질문의 내용르 좀 더 디테일하게 수정할께요...
현재 Kickstart 리눅스를 설치하고 있습니다. 현재 post 섹션에서 rpm설치를 한다던지 기타 스크립트를 작동시키고 있거든요.
개발된 스크립트는 배쉬 쉘이고요. post 섹션에서 shell을 변경하고자 합니다.
가능할까요?
--- 나는요? ---
리눅스와 솔라리스 그리고 윈도우의 껍데기만 맛보고 있습니다.
ch_sh(){ local
OTL
감사합니다
감사합니다...
굉장히 어렵군요..ㅋㅋ 작동이 잘 됩니다.
--- 나는요? ---
리눅스와 솔라리스 그리고 윈도우의 껍데기만 맛보고 있습니다.
과도하게 일반화
과도하게 일반화 시켜서 그런 것 같습니다.
머릿 속에 생각하신 그대로를 스크립트로 옮기면
'root: 로 시작하는 문자열의 뒤에서 /bin/bash 를 자르고 대신 /bin/csh 를 붙인다' 의 직설적힌 표현이죠.
OTL
브라보~
아이티 회사에 근무하는 시스템엔지니어 입니다.
멋진 스크립트 네요~
좋은 공부됐습니다~
감사합니다
댓글 달기