"해당 내용들은 데미안계열의 리눅스OS의 쉘 명령어임을 미리 말씀드립니다!"
cd [파일명] : 디렉토리로 이동 명령어
cd /root/abc/cdb : 절대경로로 이동 (파일명을 정확하게 기입)
cd / : root 경로로 이동
cd home/[사용자명]/[파일명] : 다시 기존의 폴더로 이동
cd ../ : 상위 폴더로 이동
cd ./ : 현재경로를 의미
cd -: 방금 이전까지 있었던 폴더로 이동
clear : 입력중인 명령창 깨끗하게 정리
파일이나 디렉토리 삭제
rm [파일명]: 파일 삭제명령어. (remove 약자)
ex) rm first_dir
rm -r [파일명]: 파일과 디렉토리 삭제
ex) rm -r first_dir
rm -rf [파일명]: 파일과 디렉토리를 묻지 않고 삭제
ex) rm -rf first_dir
파일이나 디렉토리를 복사
ex)cp test_dir first_dir/second_dir
ex) cp -r test_dir first_dir/second_dir
파일이나 디렉토리를 이동, 잘라내기와 같은 기능
mv [이동할 파일][이동 될 위치] (-r 옵션 필요 X)
ex) mv test.txt first_dir
mv는 파일명을 변경하는데도 많이 사용된다.
ex) mv test.txt new_text.txt
용량 0인 파일을 생성, 이미 존재할 경우 수정시간을 변경
ex) touch test.txt
텍스트로 작성된 파일을 화면의 출력
ex) cat test.txt
ex) tail -n 1 /etc/passwd
ex) head etc/passwd
echo : 터미널 화면에 출력하는 명령어
echo와 > : 표준 출력의 결과를 덮어쓰기로 파일로 저장하는 기능
echo와 >> : 표준 출력의 결과를 파일에 추가모드로 저장하는 기능
sort와 < : 파일의 내용을 전달하여 정렬 후 출력
| : 왼쪽 실행문의 결과값을 오른쪽 실행문의 입력값으로 전달
ex) echo "hello world!"
ex) echo "hello world!" > first.txt
파일 내에서 특정 패턴이나 문자열을 검색
기본 사용법
ex) grep -rni "hello" mydir
hello 문자열을 라인 수와 함께 mydir폴더에서 대소문자 구분없이 검색
파일이나 디렉토리를 검색하여 위치 출력
기본사용법
사용예시
find . -type f -name "*.txt"
→ 현재폴더에서 파일타입 중에 .txt로 끝나는 파일명 검색
활용예시
find . -name ".txt" | xargs grep -n “hello”
→ |(파이프라인)을 통해 그 다음 명령어로 전달
→ xargs는 입력받은 파일을 한줄씩 읽는것을 의미
find . -name ".txt" -exec echo {} \;
→ find로 찾은 파일에 대해 echo명령어 실행
→ find . -name "*.txt" -exec cp {} ./testFolder/ \;
ex) find . -name "txt" | xargs grep -rni "hello" 를 -exec형으로 변환
-> find . -name "txt" -exec grep -rni "hello" {} \;
리눅스에서 super권한이 있는 root계정과 그외 계정으로 사용자는 구성
sudo 키워드는 현재 계정에서 root권한을 이용하여 명령어를 실행하는 프로그램
(현재 사용자의 비밀번호를 입력)
etc/sudoers 파일에 sudo를 쓸수 있는 사용자와 명령어가 따로 정의되어 있어 아무사용자가 아무명령어를 사용하는 것은 불가
신규 사용자 생성 및 비밀번호 입력
useradd newuser
passwd newuser
사용자 교체후 파일권한 관련 테스트
su - : root 계정으로 전환 -> root계정의 비밀번호
sudo : root계정의 권한을 빌려오는 것 -> 현재계정의 비밀번호
현재계정 목록 조회
cat /etc/passwd
계정삭제
sudo userdel newuser1
sudo userdel -r newuser1
chmod xxx test.txt
test.txt파일에 대하여 소유자:소유그룹:그외(other)에 대해 권한을 부여
숫자 표기법
기호적 표기법
파일 소유자와 그룹
chown 소유자: 소유그룹 파일명
특정파일의 소유자와 그룹을 새롭게 부여하는 것
ps -e | grep -i "nginx" => 특정한 프로세스를 검색해 찾는 방법
ifconfig: IP정보 등 네트워크 설정정보 출력
ping [hostname/IP]: 네트워크 연결상태확인
nc -zv 또는 telnet: 특정 port까지 열려있는지 확인
nc는 netcat의 약자
내가 외부로 연결된 것을 확인할 때
ex) nc -zv naver.com 443
netstat:현재 서버에 연결된 네트워크 정보 출력
외부에서 나한테 연결된게 무엇인지 확인할 때
ssh: 원격 호스트와의 터미널 세션을 제공
ex)ssh [username]@hostname/IP
scp: 파일 전송
ex)scp [source][destination]