일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- SpringJDBC
- Linux
- Framework
- STS
- java
- Di
- Dependency Injection
- 컨테이너
- 리눅스
- spring framework
- @test
- 마이바티스
- JdbcTemplate
- AOP
- java spring
- 프로퍼티
- spring aop
- @JUnit
- @Spring-Test
- unix
- @AspectJ
- XML
- Spring JDBC
- myBatis
- pointcut
- POJO
- Ubunt
- Spring Boot
- JDBC TEMPLATE
- spring
- Today
- Total
개키우는개발자 : )
Linux(Unix) 인자를 이용한 스크립트 파일로 변경하기 본문
인자를 이용한 스크립트 파일로 변경하기
-adduser 파일을 /home/dogveloper/bin 디렉토리로 이동
mv ./adduser ~/bin
현재 위치의 adduser파일을 bin 폴더로 이동 시켰습니다.
파일 이동
cat adduser
adduser 파일은 고정값으로 testuser 라고 지정이 되어 있어 유저 이름이 들어가야 할 곳을 유동적으로 인자 값으로 받아 처리하면 adduser 추가할유저 방식으로 입력하여 사용자를 등록 할 수 있도록 파일을 수정 해야 한다.
파일 내용 보기
nano adduser
useradd 스크립트 에선 1개의 인자가 필요하기 때문에 $1 이라고 입력한다. 인자 값이 여러개면 $1,$2 방식으로 인자를 더 받을 수 있다. testuser가 작성되어있던 곳에 $1 로 바꿔준다.
변경된 파일
adduser aaa
aaa 라는 유저 아이디를 인자값으로 adduser 파일에 넘겨 준다. 하지만 여기서 또 문제가 발생한다.
오로지 root 권한 만 실행 되기 때문에 sudo 를 붙인다.
sudo adduser aaa
이번엔 sudo를 입력하고 생성한다 .. 하지만 또 문제가 발생한다.
우리가 만든 스크립트가 실행 되는 것이 아니라 기존에 있는 adduser 파일이 실행된다.
파일 실행 순서가 $PATH 를 보면 제일 앞에 부터 순차적으로 adduser 파일을 찾아 실행 시키는데.
sudo 를 붙이고 실행하면 sudo의 $PATH 는 /usr/localsbin: ->->->을 순차적으로 즉 sudo PATH 값 순서대로 파일을 실행시킨다. 그래서 앞에 sudo 가 붙으면 파일을 찾는 순서가 달라지기때문에 기존에 sudo PATH에 같은 이름의 파일이 있다면 우리가 만든 파일보다 먼저 선 실행 시킨다.
파일 실행 문제점
sudo /home/dogveloper/bin/adduser bbb
그렇기 때문에우리가 만든 adduser 파일이 실행될 수 있도록 절대경로를 입력하여 실행 시킨다.
우리가 만든 bbb라는 디렉토리가 home 디렉토리에 만들어진것을 확인 할 수 있다.
절대경로를 이용한 user등록
출처[뉴렉처] 유튜브 채널
https://www.youtube.com/watch?v=lUOswaQavLY&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=29
'Linux > Linux 무작정 따라하기' 카테고리의 다른 글
Linux(Unix) 프롬프트 변경하기 (0) | 2019.02.12 |
---|---|
Linux(Unix) 향상된 사용자 추가방법 (0) | 2019.02.12 |
Linux(Unix) 사용자를 추가하는 스크립트 파일 생성하기 (0) | 2019.02.12 |
Linux(Unix) 홈 디렉토리 소유권 변경하기 (0) | 2019.02.12 |
Linux(Unix) 사용자 추기하기 (2) | 2019.02.12 |