'리눅스 사용자 비밀번호변경'에 해당되는 글 1건

  1. 2014.07.05 실사용예로 알아보는 간단한 스크립트 - (1) read echo case 등








우선 예제 스크립트

#!/bin/bash

#* echo 로 화면에 메세지 출력 *#
echo "사용자 계정 생성 스크립트 입니다."
echo "필드명을 정확히 확인후 작성 부탁드립니다."

echo -n "성명 :"
#*read 로 스트링 입력받기 read 뒤에 붙는 녀석은 환경변수 *#

read nm
echo -n "아이디 :"
read id
echo -n "비밀번호 :"
read pw
echo -n "연락처(휴대폰) :"
read cn
echo -n "생년월일 :"
read bd
echo -e "계정사용용도"
echo -en "      1. 머드접속유지\r\n     2. 파일저장소\r\n       4. 머드게임개발\r\n     4. Web\r\n      5. 기타\r\n\r\n 선택하세요 : "
read ty
#* case 문으로 번호 선택 -> 해당번호 명령어 실행 *#

  case $ty in
    1)
        echo -e "머드접속유지" > /data/admin/user_info/tmp.txt
        echo "/home/$id" > /data/admin/user_info/tmp2.txt
    ;;
    2)
        echo -e "파일저장소" > /data/admin/user_info/tmp.txt
        echo "/home/$id" > /data/admin/user_info/tmp2.txt
    ;;
    3)
        echo -e "머드게임개발" > /data/admin/user_info/tmp.txt
        echo "/home/$id" > /data/admin/user_info/tmp2.txt
    ;;
    4)
        echo -e "Web" > /data/admin/user_info/tmp.txt
        echo "/data/www/$id/"  > /data/admin/user_info/tmp2.txt
    ;;
    5)
        echo -e "기타" > /data/admin/user_info/tmp.txt
        echo "/home/$id/"  > /data/admin/user_info/tmp2.txt
    ;;
    *)
        echo "Warning : 잘못된 선택입니다."
        echo -n "Enter키를 눌러주세요"
        read
    ;;

  esac


echo "수집한 정보로 계정을 생성합니다. 잠시만 기다려주세요....."
#* in= 이런식으로도 변수 지정이 가능하다 *#

in=/data/admin/user_info/$id
touch $in
echo -e "성명 : $nm" > $in
echo -e "생년월일 : $bd" >> $in
echo -e "연락처 : $cn" >> $in
echo -e "계정사용용도 : $(cat /data/admin/user_info/tmp.txt)" >> $in
useradd -m -d $(cat /data/admin/user_info/tmp2.txt) -c "$nm" $id

echo "$id:$pw" | chpasswd > /dev/null 2>&1
echo "$nm님의 ID $id가 생성 완료 되었습니다."
#* 입력받은 정보로 계정을 만들면서 사용자에게 문자 보네기 *#

/usr/local/sbin/sendlms-system $cn "[LECL-Ent] '$nm'님 신청하신 '$id' 가 발급되었습니다. 계정접속 비밀번호는 '$pw' 입니다. 접속후 passwd 명령어로 비밀번호를 변경해 주세요.."
#* 그전에 스누피님 블로그에서도 다룬적 있는 내용 // chpasswd 로 비밀번호 한줄로 변경하기 *#

ln -sf /etc/tt.conf $(cat /data/admin/user_info/tmp2.txt)
chown $id:$id $(cat /data/admin/user_info/tmp2.txt) -Rv > /dev/null 2>&1
chmod 700 /data/admin/user_info/* > /dev/null 2>&1
rm -rf /data/admin/user_info/tmp.txt > /dev/null 2>&1
rm -rf /data/admin/user_info/tmp2.txt > /dev/null 2>&1

자 이제는 해당 명령어 들의 사용예를 적어보겟습니다~~ ㅎ

echo "테스트" -> 쉘에 테스트라는 문자를 남길때

echo -e  : enable interpretation of backslash escapes (\와 조합형으로 쓸수 있는 기능을 사용)

해당 기능은....

       \\     backslash

       \a     alert (BEL)

       \b     backspace

       \c     produce no further output

       \e     escape

       \f     form feed

       \n     new line

       \r     carriage return

       \t     horizontal tab

       \v     vertical tab

이정도 입니다~

echo -.r : 해당 줄에 표시 (?) 보통 echo "정답 " 하면 해당 라인 아랫줄에 정답이 표시되는데 이를 한줄 위로 올릴수 있습니다~

read a변수 - > a변수에 스트링을 입력해 줍니다

read test 입력후 aaaa를 입력한 뒤에

echo $test 해보면 aaaa 가 출력되는것을 볼 수 있습니다~

 

그다음에는 chpasswd

 

제일 무난하게 사용할 수 있는 방법


echo "id:pw" | chpasswd  입니다~ 딱 봐도 감이 오시죠? ㅎ

 

우선 이번 포스팅은 여기 까지 입니다~~ ㅎ

 

그럼 즐거운 주말되세요~

 

 

'PC > Linux' 카테고리의 다른 글

데비안 호스트네임 변경하기  (0) 2015.01.03
APCUPS 소스로 설치하기  (0) 2014.08.15
리눅스에서 쉘로 coolsms 사용하기  (0) 2014.07.05
Bind DDNS 구축하기  (0) 2014.07.05
DNSEver DDNS 로그 남기는 스크립트  (0) 2014.06.22
Posted by 현종이닷
,