행 수를 가져와 결과 집합에 저장

행 수를 가져와 결과 집합에 저장

파일의 행 수를 계산하고 결과 세트에 저장해야 합니다.

for file in *.csv
do
  num_of_lines=wc -l "$file"
  split -n 5 -d -a 2  "$file" "$file"
done

나는 이 줄에서 내가 틀렸다고 확신합니다: num_of_lines=wc -l "$file". 올바른 접근 방식은 무엇입니까?

답변1

당신의 num_of_lines것이어야합니다

num_of_lines=$(wc -l "$file")

단어 수의 출력을 가져옵니다.

그러나 위 명령은 파일 이름도 인쇄합니다. @1_CR의 의견에 따르면 이를 피할 수 있습니다.

num_of_lines=$(< "$file" wc -l)

답변2

이것은 또한 작동합니다:

num_of_lines=$(cat $file | wc -l)

관련 정보