df -t nfs $ directoryLàm thế nào để biết (trong sh) cho dù một thư mục được gắn trên NFS
trả về hai dòng đầu ra nếu thư mục được NFS gắn và một dòng nếu không.
Một số phiên bản của df cho trạng thái thoát 1 nếu nó không được NFS gắn, nhưng GNU coreutils 5.3.0 không ...
if [ `df -t nfs . | wc -l` = 2 ];
cảm thấy thanh nha và các đồng nghiệp nói rằng nó không kiểm tra đầy đủ các lỗi. Có cách nào tốt hơn để làm điều này?
Tôi đã thử một vài tùy chọn, nhưng bạn vẫn có vẻ thanh lịch hơn với tôi. Các đồng nghiệp của bạn có đề cập đến các lỗi mà sẽ bỏ qua phương pháp này không? 1 cho một nỗ lực tốt đẹp. –
OK, tôi đã tìm thấy một sự cố. Nếu cột đầu ra đầu tiên quá dài (ví dụ: 'nfs_server:/long/mount/point'), thì' df' sẽ tách đầu ra trên hai dòng và bạn kết thúc bằng 'wc -l = 3'. Dễ dàng giải quyết bằng cách thay đổi giải pháp của bạn thành 'if [.... -gt 1]'. –
@ShawnChin: Nếu bạn áp dụng tùy chọn '--portability' /' -P', nó sẽ không bao bọc các dòng dài. Hoàn hảo cho chế biến máy. (Thử nghiệm với 'df (GNU coreutils) 7.4') – RobM