grep 명령이 필수 문자와 일치합니다.

grep 명령이 필수 문자와 일치합니다.

현재 스토리지의 전체 스냅샷 사용량을 얻기 위해 다음 명령을 사용하고 있는데, 이는 G에 없는 값만 표시합니다 T.

# isi_classic snapshot usage | tail -n 1 | egrep -o "[+-]?[0-9]+[.]?[0-9]([eE][+-])?[0-9]G"
621G

하나의 명령으로 G와 T를 모두 일치시키고 정확한 출력을 얻을 수 있는 방법이 있습니까?

# isi_classic snapshot usage
[snapid 1653, delete pending]                        0     n/a (R)    0.00% (T)
ifs_daily-s1-nov01_20            262G     n/a (R)    0.46% (T)
ifs_weeky-s1-nov01_20            176G     n/a (R)    0.31% (T)

                                               18T     n/a (R)   31.37% (T)

실제 출력은 아래와 같습니다.

 isi_classic snapshot usage | tail -n 1
                                                  621G     n/a (R)    1.08% (T)

답변1

여기서는 grep이 필요하지 않다고 생각하고 대신 awk를 사용합니다.

isi_classic snapshot usage | tail -1 | awk '{print $1}'

그러나 고집한다면 grep마지막 것을 G다음과 같이 변경하면 [GT]도움이 될 것입니다.

isi_classic snapshot usage | tail -1 | egrep -o "[+-]?[0-9]+[.]?[0-9]([eE][+-])?[0-9][GT]"

관련 정보