쉘 커맨드 참조 싸이트 https://ss64.com/bash/
echo
echo는 print 같은 함수
echo Hello! 와 echo Hello!! 는 다르다
느낌표는 특별한 기능을 하기 때문. 이러한 기능을 가진 문자들이 정해져 있다.
이런 문제를 방지하려면 따옴표로 감싸서 사용한다
echo 'Hello!!'
문자 앞의 $ 달러사인은 shell variable 을 나타내기 위해 사용된다.
echo $COLUMNS x $LINES
요로코롬 해보면 쉘 윈도우의 사이즈가 나온다
ls, cd, mv
ls = List
cd = Change Directory
pwd = Print Working Directory
디렉토리 이름에 공백이 있을 경우 따옴표를 사용한다
cd 'My Pictures'
Path를 표현할 때는 포워드슬래시를 사용한다
ls -a
는 detailed listing of files
ls -l Documents/*.pdf
확장자가 pdf인 모든 파일들을 자세히 보여줌
ls bear*
bear로 시작하는 모든 파일들을 리스팅
mv Documents/*.epub Documents/Books
모든 epub 파일을 옮기기
cd Documents; mv Books/*.epub .
.은 current directory로
cd Docuemnts/Books; mv * ..
..은 parent directory로
mv 'Documents/Books/\*' Documents
‘Documents/Books/*’ <-이렇게 생긴 파일 이름을 찾으려고 하니까 당연히 없다.
curl, cat, rm
curl is used in command lines or scripts to transfer data.
curl = C Url = See URL (언어유희)
curl -L 'https://google.com'
-L 옵션은 follow web redirects
curl -o google.html -L 'https://google.com'
google.html 파일로 다운로드
퍼센트 사인이나 앤드 사인 같은 특수문자가 있을 수 있으니 따옴표를 사용하는 게 좋음
cat은 파일을 읽기
cat = catenate 혹은 concatenate
cat 말고 less는 한 페이지부터 보여줌
스페이스바로 페이지씩 내림. b 키는 back, 슬래시는 검색을 위해 사용
rm -> remove
휴지통이 없음 -> 파일 바로 삭제하므로 조심
불안하면 -i 옵션을 사용. i는 인터렉티브. 모든 파일을 삭제 전에 물어봄.
rm -i abc.text
예시 rm *'Bad F'*
파일 이름에 ‘Bad F’가 포함된 것들을 삭제
rmdir 리무브 디렉토리
grep, wc
grep: “global regular expression print,” processes text line by line and prints any lines which match a specified pattern
wc: “short for word count” reads either standard input or a list of files and generates one or more of the following statistics: newline count, word count, and byte count
grep shell dictionary.txt | less
-> 딕셔너리.txt에서 ‘shell’을 그랩해서 레스로 파이프함
curl -L url | grep fish
-> url에다가 -L 한 내용에서 fish를 찾음
숫자 세기
curl -L url | grep fish | wc -l
fish가 있는 줄 숫자 세기
wc의 옵션
-c : Print only the byte counts.
-l : Print only the newline counts.
Shell Variable 과 Environment Variable
shell variable와 environemnt variable
echo $PATH
치면 환경변수가 등록된 곳이 나옴
PWD는 환경변수일까 쉘변수일까? -> 환경변수
echo $PWD
해보라는 데 이해 안됨
$LOGNAME 은 현재 로그인한 게정의 유저네임
Alias
Aliases - 명령어 간단하게 만들기
alias: Allows you to create short names for commands.
예시 :
alias ll='ls -la'
추가 학습 자료
The Bash Academy http://www.bash.academy/
Bash Beginners Guide http://www.tldp.org/LDP/Bash-Beginners-Guide/html/
Bash Programming HOWTO http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html
Regexr — Learn Regular Expressions http://regexr.com/
-
Previous
uWSGI + Django - Secret Key 환경변수로 설정하기 -
Next
스터디 노트 - Udacity HTTP & Web Servers (1) Requests and Responses