Tôi có các tệp trong thư mục con của thư mục hiện tại có thể có hoặc không có dòng mới ở cuối; Làm cách nào tôi có thể tìm thấy các tệp không có dòng mới ở cuối?
Tôi đã thử điều này:
find . -name '*.styl' | while read file; do
awk 'END{print}' $file | grep -E '^$' > /dev/null || echo $file;
done
nhưng nó không hoạt động. awk 'END{print}' $file
in dòng trước một dòng mới trống, giống như tail -n 1 $file
.
awk 'END{print}' $file
: điều này bỏ qua hoàn toàn nội dung của tệp $ và sau khi hoàn thành phân tích cú pháp tất cả các tệp có trong "tệp $", nó sẽ thêm một dòng mới. Vì nó là thứ duy nhất mà lệnh awk in ra, nó có thể được thay thế bằng: printf '\n'
(hoàn toàn không có tập tin mentino nào của tập tin $) và làm điều tương tự. Tôi nghĩ rằng đây KHÔNG phải là những gì bạn đã nhắm đến (ví dụ: in dòng cuối cùng của tệp?)
c
và FreeBSD cũng vậy, nhưng tôi không nhận thấy nó được ghi nhận là phụ thuộc vào việc triển khai: gnu.org/software/gawk/manual/ . Vì vậy, nó không xảy ra nhưng không phải lúc nào.