[Linux] 1.명령어
내가 모르는 리눅스 명령어 들
다중 명령어
- 세미콜론(;)
여러 명령어 실행
ls; echo hello
- 파이프
첫번째 명령 결과를 두번째 명령에 사용
ls | cat >> a.txt
- 앰퍼센트(&&)
첫번째 명령이 정상 종료 했을 경우 두번째 명령어 수행
ls && ls
Curl
command line용 data transfer tool
HTTP/HTTPS/FTP/TELNET 등 주요 프로토콜 지원하며 업로드와 다운로드 모두 가능
설치
보통 Linux나 Mac에 탑재가 되어있지만 없을 경우 직접 설치해준다.
$ apt-get install curl
사용
$ curl [options] <url>
- 주요 옵션
옵션 | 설명 |
---|---|
-L | 서버에서 리다이렉트 응답(301, 302)이 왔을 경우 redirection URL로 따라간다. |
-d | HTTP Post data (Json 데이터를 주고받는 REST 기반 웹 서비스 테스트 시 용이 함) |
-o | curl로 받아온 데이터를 file로 저장 |
-s | 진행 내역이나 메시지등을 출력하지 않는다. |
-X | requset method 종류를 지정한다 (GET,POST,PATCH, PUT, DELETE) |
이 외에도 많음.
Tee
표준 입력(standard input)에서 읽어서 표준 출력(standard output) 과 파일에 쓰는 명령어
$ find -name "hello" | tee output.txt > /dev/null
-a : 파일이 존재 할 경우 이어 쓰기한다.
- /dev/null 로 보내진 표준 출력은 버려짐
심볼릭링크
링크를 연결하여 원본 파일을 직접 사용하는 것과 같은 효과를 내는 명령어. 윈도우의 바로가기와 유사함
$ ln -s [원본파일] [새로 만들 파일]
sed
원본 파일에 손실 없이 문자열을 치환하거나 삭제할 수 있다.
$ sed 's/이거를/이걸로' file.txt
정규식 공부 필요
cat « EOF
EOF를 입력하기 전까지 입력을 하여 파일을 생성한다.
$ cat << EOF > file.txt
sdfasd
sfasfs
EOF
crontab
$ crontab -l // 목록
$ crontab -r // 제거
$ crontab -e //
* * * * * ls -al
분 시 일 월 요일 [명령어]
- crontab: “/usr/bin/vi” exited with status 1 가 뜨면서 추가 되지 않을 때
& export EDITOR=/usr/bin/vim