본문 바로가기
Linux

리눅스 과정 8일차

by Mostlove 2025. 2. 27.
728x90
반응형
엔터, ;, '명령어', $(명령어) 명령어를 실행함
{ } { }의 어느 문자와 매치되면 실행함 <={Aa}
\ \뒤의 것이 특수문자인 것을 표시함 <=\(, \;
| |앞의 실행결과를 |뒤의 입력으로 함
& 백그라운드로 실행함
!숫자 history에서 해당 숫자의 명령어를 실행함
* 임의의 여러 문자
? 임의의 한 문자
[ ]  [ ] 범위에 매치되는 문자 <=[a-z]
> >앞의 실행결과를 > 뒤의 입력으로 함
>!  >앞의 실행결과를 >뒤로 강제입력함
< <뒤의 실행결과를 <앞의 입력으로 함
>>, << >>앞의 실행결과를 >>뒤로 추가함
2> /dev/null 표준 에러를 콘솔에 표시 안 함
2>& 1 표준 에러를 표준 출력으로 보냄
2>& /dev/null 표준 에러를 파일이나 장치로 보냄
A>& B  A파일의 출력을 B파일의 입력으로 써줌
A <& B B파일을 읽어서 A파일의 출력으로 써줌
0> A STDIN : 키보드 입력
1> A STDOUT : 화면 출력
2> A STDERR : 화면 에러 
패턴 설명
[aeiou] a, e, i, o, u중 어느 문자라도 들어있는 것 
[a-z] a부터 z 사이의 문자가 들어있는 것 . 알파벳 소문자 전체 
[a-z][A-Z] a부터 z 사이와 A부터 Z사이의 문자가 들어있는 것. 알파벳 대소문자 전체
[0-9] 0부터 9사이의 숫자가 들어있는 것
^[ ],[^ ] ^[ ]는 [ ]내용으로 시작됨, [^ ]는 [ ]내용의 부정 <=^[^#$]
^pattern 주어진 패턴으로 시작되는 줄 <= ^#
pattern$ 주어진 패턴으로 끝나는 줄. 단독으로 $를 쓰면 빈 줄 <= #$
^[a-z][0-9]$ 시작은 a부터 z 사이의 문자, 끝은 0부터 9사이의 숫자인 줄
[.], [...] .는 임의의 문자 1개, ...는 임의의 문자 3개 <= [a...e] cf. a???e
pattern+ 이전 패턴과 하나 이상으로 매치되는 어구 <= root+
pattern* 이전 패턴과 매치되지 않는 어구 <= root*
pattern? 이전 패턴과 하나만 매치되는 어구 <= root?
(abc)+ 'abc' 패턴과 하나 이상으로 매치되는 줄. +는 적어도 하나 이상을 의미
()는 여러 정규 표현식을 하나로 묶기도 한다
v 부정의 의미 <= v#는 #이 없는 줄을 보임, cf. [^#] 
c 갯수를 표시 <= c#는 #이 있는 줄의 갯수
| 두 개의 정규 표현식에서 OR 의미
{n}, {n,m} 지정된 정규 표현식에 n번 일치, 최소 n에서 최대 m번 일치 
[: ~ :] 클래스 
[:alnum:] alnum은 영문이나 숫자와 일치
[:alpha:] alpha는 영문자와 일치
[:digit:] digit는 숫자와 일치
[:punt:] punt는 구두점(, . )과 일치

=>[a-e]는 {abcde}로써 a,b,c,d,e 중 하나, [ak]는 a나 k 중 하나, ^a는 a로 시작, a$는 a로 끝남, v #은 #이 없는 줄 보임, c #은 #이 있는 줄의 갯수를 나타낸다.
    ^pass : pass라는 단어로 시작되는 모든 줄, ^#은 #으로 시작되는 줄, ^$ : 모든 빈 줄, #$ : #으로 끝나는 줄, d...(...이 세 개) : d로 시작되는 총 네 자리 문자(d???), [a-d]* : a에서 d까지 a,b,c,d 중 하나로 시작되는 문자열, [Dd]atabase : D나 d로 시작되는 database라는 단어, [^D] : D라는 문자로 시작되지 않는 줄, c...d(...이 세 개) : c로 시작되고 d로 끝나는 총 5자리 문자(c???d) 등이 있다. 

 파일을 좀 더 잘 찾아주는 정규표현식 - *, ?, [], {}, 2>, 1>& 등
  파일 작업에서 정규 표현식 [ ]나 { }, 그리고 *과 ?와 같은 부호를 사용해서 명령어 실행을 간략히 빠르게 처리하는 방법인데, 정규 표현식으로 많은 파일과 문장을 편리하게 조작하게 해준다. 쉘 스크립트나 데이터베이스 SQL 쿼리, Python, C, JAVA 등에서도 자주 사용된다. 


반응형

'Linux' 카테고리의 다른 글

리눅스 과정 11일차  (1) 2025.03.04
리눅스 과정 10일차  (0) 2025.02.28
리눅스 과정 7일차  (0) 2025.02.26
리눅스 과정6일차  (0) 2025.02.26
리눅스 과정5일차  (0) 2025.02.26