"grep"의 "/$"는 무엇을 의미합니까?

"grep"의 "/$"는 무엇을 의미합니까?

아래 두 코드를 사용하고 있습니다.

ls -lap . | grep -v "/$"
ls -lap . | grep -v "/"

어떤 경우에는 두 가지가 서로 다른 결과를 제공합니다. 이 맥락에서 $는 무엇을 의미합니까?

답변1

줄의 끝을 나타내는 정규식입니다. 이 명령은 출력에서 ​​디렉터리를 제외하는 데 사용됩니다 . 출력에 줄 끝을 제외한 모든 위치에 조건이 포함될지 확신할 수 없지만 , 실제로 그런 경우라면 두 명령의 출력은 다음 ls과 같습니다. 동일하지 않습니다./ls -lap ./

다음 예를 참조하세요.

$ ls -lap .
total 12
drwxr-xr-x  3 jesse_b jesse_b 4096 Apr 13 10:00 ./
drwxr-xr-x 12 jesse_b jesse_b 4096 Apr 13 09:59 ../
drwxr-xr-x  2 jesse_b jesse_b 4096 Apr 13 10:00 bar/
-rw-r--r--  1 jesse_b jesse_b    0 Apr 13 09:59 foo
-rw-r--r--  1 jesse_b jesse_b    0 Apr 13 10:00 oof
$ ls -lap . | grep -v "/$"
total 12
-rw-r--r--  1 jesse_b jesse_b    0 Apr 13 09:59 foo
-rw-r--r--  1 jesse_b jesse_b    0 Apr 13 10:00 oof
$ ls -lap . | grep -v "o$"
total 12
drwxr-xr-x  3 jesse_b jesse_b 4096 Apr 13 10:00 ./
drwxr-xr-x 12 jesse_b jesse_b 4096 Apr 13 09:59 ../
drwxr-xr-x  2 jesse_b jesse_b 4096 Apr 13 10:00 bar/
-rw-r--r--  1 jesse_b jesse_b    0 Apr 13 10:00 oof
$ ls -lap . | grep -v "o"
drwxr-xr-x  3 jesse_b jesse_b 4096 Apr 13 10:00 ./
drwxr-xr-x 12 jesse_b jesse_b 4096 Apr 13 09:59 ../
drwxr-xr-x  2 jesse_b jesse_b 4096 Apr 13 10:00 bar/

관련 정보