2011-06-29 15 views

Trả lời

14

Khi bạn nói bạn muốn nó trả về một số cụ thể, bạn có đề cập đến trạng thái thoát? Nếu vậy:

[[ -z `find /this/is/a/path/ -name core.*` ]] 

Và kể từ khi bạn chỉ quan tâm đến một có/không trả lời, bạn có thể muốn thay đổi tìm bạn như thế này:

[[ -z `find /this/is/a/path/ -name core.* -print -quit` ]] 

đó sẽ dừng lại sau khi các tập tin cốt lõi đầu tiên được tìm thấy. Nếu không có điều đó, nếu thư mục gốc lớn, việc tìm kiếm có thể mất một lúc.

+0

Điều này sẽ trả về 0 nếu đầu ra là không trống, không phải nếu nó trống. –

+1

Rất tiếc. Logic đã được đảo ngược. Đã sửa ở trên. Alex đúng với '-z' –

+2

+1 cho tùy chọn' -quit', rất hay! –

3

Có lẽ nhiều biến thể, nhưng đây là một:

test $(find /this/is/a/path/ -name core.* | wc -c) -eq 0 
4

Dưới đây là phiên bản của tôi. :)

[ -z "$(find /this/is/a/path/ -name 'core.*')" ] && true 

Edited cho ngắn gọn:

[ -z "$(find /this/is/a/path/ -name 'core.*')" ] 
+0

'cái && true' là gì? –

+0

Heh, tôi đã nghĩ, "Để đặt trạng thái thoát." Nhưng yeah, duh, thử nghiệm đã làm điều đó, nó hoàn toàn không cần thiết, bắt tốt. –

1

Có lẽ đây

find /this/is/a/path/ -name 'core.*' | read 
Các vấn đề liên quan