https://rhrhth23.tistory.com/20
배웠던 touch 문으로 셀 스크립트를 만들자.
touch script.sh
터치문은 빈 파일을 생성하는 명령어이다.
chmod 755 script.sh
chmod란? : 파일의 권한을 수정하는 명령어다.
소유자(rwx) 그룹(rwx) 사용자(rwx)의 권한을 수정한다.
grep문은 지정된 패턴이 포함된 행을 찾는다.
grep bash /etc/passwd
로 /etc/passwd 디렉토리안에 'bash'란 행을 포함하는 쉘을 찾았다.
grep -r ubt *
각각, -r 옵션을 적용하여 "모든파일" 에서 ubt란 인자가 포함되는 셀을 찾아라
-r 옵션이란? : 'ubt'가 들어있는 파일을 프롬포트에 찾아준다.
grep -l hello *.c
점 뒤에 붙은건 확장자다. txt로도 가능하다.
grep문과 같지만 다르다. 그랩은 파일 내용을 찾는거지만 find문은 파일을 찾는다.
화면에 출력을 하는 문구다.
물결표? : 홈 경로.
find ~ -name hello.c
/home/ubt 안에서 이름이 hello.c인 파일을 찾아달라
호스트가 담겨 있는 내용을 전부 보여달라, 그리고
오류가 있는것들은 뒤에 적인 곳에 보내라.
해당 명령어가 어디에있는지를 알린다.
파일을 찾는 cat 명령어는 bin 안에 있다고 한다.
ls -l /bin/cat으로 살펴보면
x가 있다, 이 x는 실행파일이란 뜻으로, cat은 실행파일임을 알 수 있다.
에코문은 텍스트 를 치면 바로 화면에 문자열을 출력시킨다.
vi 혹은 vi asd(파일 이름)
를 입력하는것으로 편집모드로 들어간다
:w 저장
:q 종료
:wq 저장 후 종료 , 이렇게 두 인자를 붙일 수 있다. qw는 당연히 모순적인 명령이므로 정상적으로 작동하진 않는다.
우선 우리는 touch abc 로 파일을 만들자.
이 파일안에는 내용이 없다. 그래서 cat abc를 쳐도 아무런 내용이 출력되지 않는다.
이 안에는 리다이렉션을 통해 원하는 글자를 넣어보자.
echo aa 는 그냥 해당글자를 출력하는거지만
리다이렉션을 넣으면 그걸 어딘가로 보낸다.
vi hello.sh
를 쳐보자. 쉘 스크립트는 이름은 상관없지만 뒤에 .sh 확장자를 붙여야 한다.
.sh 확장자를 붙여서 만들었지만 딱히 뭐가 있는것 같지는 않다.
여기에서 상단에
#!/bin/bash 를 붙임으로서 쉘 스크립트를 완성한다.
그후 명령모드로 저장후 나간뒤,
bash 쉘스크립트이름.sh 혹은
. 이름.sh
를 치면..
이렇게 적어놨던게 실행된다.
근데 여기에서 그치지 않고, 이 파일을 실행파일로 바꾸고 싶다면..
chmod +x hello.sh
x가 추가된다(실행파일화)
./hello.sh 를 침으로서 실행시킨다.
https://www.fun-coding.org/post/linux_basic3.html#gsc.tab=0
쉘 스크립트를 통한 여러가지 코드 작성들은 다음 블로그를 참조.