반응형
- 유닉스 계열인 리눅스에서는 대소문자를 구분
1. 현재 위치 출력(print work directory): pwd
pwd
2. 현재 디렉터리 내의 파일과 디렉터리 목록 출력: ls
ls -l // 파일의 상세 정보 확인
ls -a // 숨김 파일 표시
ls -t // 최신 파일부터 표시
ls -rt // 오래된 파일부터 표시
ls -F // 파일의 타입 표시
ls -R // 하위 디렉터리까지 표시
3. 디렉터리 생성: mkdir
mkdir <diretory_name> // 현재 디렉터리에 폴더 생성
mkdir -p <directory_name>/<sub_directory> // 현재 디렉터리에에 하위 디렉터리까지 생성
4. 디렉터리 이동: cd
cd ~ // 홈 디렉터리로 이동
cd .. // 상위 디렉터리로 이동
cd <absolute_path> // 절대경로 이동
cd - // 이전 디렉터리로 이동
5. 파일/디렉터리 복사: cp
cp <source> <target> // source를 target으로 복사
cp -f <source> <target> // source를 target으로 덮어쓰기
cp -R <source_dir> <target_dir> // 디렉터리 복사시 하위 디렉터리까지 모두 복사
6. 파일/디렉터리 이동: mv
mv <target> <change> // 파일명 변경
mv <target> ../ // 상위 디렉터리로 파일 이동
mv <target> /<dir_name>/ // 디렉터리로 파일 이동
7. 파일/디렉터리 삭제: rm
rm <target> // 파일 혹은 디렉터리 삭제
rm -r <target> // 하위 디렉터리까지 모두 삭제. 삭제시 확인
rm -rf <target> // 강제 삭제
rm -i *.txt. // 모든 파일(.txt) 삭제시 하나씩 확인하면서 삭제
8. 파일/디렉터리 찾기: find
find <dir> -name <pattern> // 디렉터리 내에서 패턴에 맞는 파일 또는 디렉터리 탐색
find <dir> -path '**/dir_name/**.*.js' // 디렉터리를 지정하여 찾기
find <dir> -name '*pattern' // 파일명을 패턴으로 찾기
find <dir> -name <pattern> -not -path '*/dir_name/*' // 특정 경로 제외하고 탐색
find <dir> -name '*.ext' -exec wc -l {} \; // 파일 찾은 후 다음 명령어 실행
find <dir> -daystart -mtime -7 -delete // 7일간 수정된 파일 찾아 삭제
find <dir> -type f -empty -delete // 0바이트인 파일 찾아 삭제
9. 파일 생성: touch
touch <file> // 파일 생성
touch -c <file> // 파일의 시간을 현재 시간으로 갱신
touch -r <afile> <bfile> // bfile의 날짜 정보를 afile의 날짜 정보와 동일하게 변경
10. 파일 내용 확인: cat/head/tail
cat <file> // 파일 내용 확인
head <file> // 파일 앞부분 확인
tail -n <숫자> <file> // 파일의 마지막 라인부터 숫자만큼 라인 보여주기
tail -n +<숫자> <file> // 숫자로 지장한 라인부터 보여주기
tail -c <숫자> <file> // 마지막 라인부터 숫자로 지정한 바이트 수만큼 보여주기
tail -f <file> : // Ctrl + C로 중단하기 전까지 지정한 파일의 마지막에 라인이 추가되면 계속 출력
tail -n <숫자> -s <second> -f <file> // 초로 지정한 시간이 지날 때마다 refresh
11. 문자열 화면 표시: echo
echo <문자열> // 문자열 화면에 출력
echo <변수> // 변수를 출력
echo -e <문자열> // 이스케이프 문자열을 해석
echo -e "hello\nline\n" // 개행 표시 가능
echo * // 현재 디렉터리의 파일과 폴더 출력
echo hello > test.txt // hello 문자열을 test.txt 파일을 생성하여 기록
echo hello2 >> test.txt // hello2 문자열을 기존의 test.txt 파일에 추가
12. IP 정보 확인: ip addr/ifconfig
ip addr
ifconfig
13. 네트워크 상태 확인(socket statistics): netstat/ss
ss -a // 모든 포트 확인
ss -t // TCP 포트 확인
ss -u // UDP 포트 확인
ss -l // LISTEN 포트 확인
ss -p // 프로세스 표시
ss -n // 호스트, 포트, 사용자명을 숫자로 표시
14. 서버의 포트(netcat) 확인: nc/telnet
nc <ip_addr> <port> // 포트 오픈 여부 확인
nc -v <ip_addr> <port> // 상세 정보 확인
nc -l <port> // 현재 서버의 포트를 오픈(방화벽에 해당 포트 번호 설정)
15. 명령어 위치 확인: which/whereis/locate
which <cmd> // 특정 명령어 위치 찾기
which -a <cmd> // 모든 경로에서 명령어 찾기
where <cmd> // which -a와 동일
whereis <cmd> // 실행 파일, 소스, man 페이지의 파일 탐색
locate <pattern> // 파일명을 패턴으로 탐색
16. 실행 중인 프로세스 목록과 상태 확인: ps
ps aux // 실행 중인 모든 프로세스 확인
ps auxw // 실행 중인 모든 프로세스 커맨드 포함 확인
ps aus | grep <pattern> // 특정 패턴과 매칭되는 프로세스 목록
ps --sort size // 메모리 사용량 기준 정렬
17. 프로세스 종료: kill
kill -l // 시그널 표시
kill <process_id> // 프로세서 종료(SIGTERM)
kill <job_id> // 백그라운드 잡 종료
kill -9 | kill <process_id> // 프로세스 강제 종료
18. 주어진 입력값에서 패턴에 맞는 값 출력: grep
grep <pattern> <file> // 패턴을 만족하는 파일 찾기
grep --with-filename --line-number <pattern> <file> // 파일명과 라인을 함께 표시
grep --invert-match <pattern> // 매칭하지 않는 부분 표시
cat <file> | grep <pattern> // 내용에서 패턴과 일치하는 부분 찾기
19. 명령어 별칭 만들기: alias
alias // 모든 alias 표시
alias <word="cmd"> // alias 제작
unalias <word> // alias 삭제
20. 편집기: vi/vim/nano
vi <target> // 문서 편집기 집입
a, i(편집모드) esc(명령모드), :wq(저장후 종료), h,j,k,l(방향키)
vim <target>
반응형
'임시 글' 카테고리의 다른 글
[분야별 기본기] 컴퓨터 공학 (0) | 2024.08.29 |
---|