Câu trả lời:
Tôi không chắc bạn có thể làm điều này với grep, tuy nhiên bạn có thể sử dụng awk
:
awk '{ print $2}' file.csv
Nó sẽ in ra cột thứ hai của tập tin của bạn.
CHỈNH SỬA
Nếu bạn không muốn in tên cột ra ( B
trong ví dụ), bạn có thể đặt điều kiện trên FNR:
FNR Số bản ghi đầu vào trong tệp đầu vào hiện tại.
Như thế này:
awk ' FNR > 1 { print $2}' file.csv
CHỈNH SỬA 2
Nếu tệp của bạn là tệp CSV thực (giá trị được phân tách bằng dấu phẩy), bạn phải cung cấp đối số dấu tách trường ( -F
hoặc --field-separator
):
awk -F',' ' FNR > 1 { print $2}' file.csv
Sử dụng grep trong lệnh theo câu hỏi.
cat file.csv | cut -d " " -f 2 | grep -o '[0-9]'
Trong đó cut -d (dấu phân cách là "") bằng cách sử dụng khoảng trắng hoặc "," khi csv là dấu phẩy và -f 2 là trường thứ hai
grep -o là - khớp
Chỉnh sửa để cho phép trường không số mất grep
cat file.csv | cut -d " " -f2 | tail -n +2