2014-05-14 4 views
-1

줄 수 N 인 파일 만 폴더에서 선택하여 복사하고 싶습니다.N 줄 파일 선택 및 복사

어떻게하면 Bash에서이 작업을 수행 할 수 있습니까?

A1.

+0

실제로 가능한 :) 우리에게 당신의 시험을 공유하십시오. –

+0

아마도 내 질문을 다시 말해야겠습니까? 아닙니다. 나는 "find"로 시도했지만 "lines options"은 없다. – altroware

+0

다음을 사용하십시오 :'find. -type f -exec wc -l {} \;' – sat

답변

1

당신은 bash는 루프를 사용하여이 작업을 수행 할 수 있습니다 :

for f in *; do 
    [ -f "$f" ] && [ $(wc -l < "$f") = 8 ] && cp "$f" "$dest" 
done 

이 의지 루프를 디렉토리에있는 모든 파일과 폴더를. 첫 번째 테스트는 대상이 파일인지 확인합니다. 두 번째 줄의 수는 8입니다. 둘 다 맞으면 "$dest"에 파일 cp.

편집 : 숨김 파일도 포함하려는 경우 루프를 for f in .* *으로 변경할 수 있습니다. 이 점에 대해 감사드립니다.

+0

숨겨진 파일을 원할 경우 반복 할 항목 목록에'. *'를 추가하십시오. – chepner

+0

@chepner 감사합니다. 다른 가능성으로 추가했습니다. –