finger
Phân tích đầu ra của finger -m <username>
. Không có mã lỗi nếu không tìm thấy người dùng, thật không may, nhưng nếu không tìm thấy, đầu ra lỗi sẽ được ghi. Không có nhược điểm cho đến nay.
finger -ms <username> 2>&1 1>/dev/null | wc -l
Sẽ in 0
nếu người dùng được tìm thấy (vì không có đầu ra lỗi), số khác lớn hơn.
chown
Chạy (như bất kỳ người dùng, đáng ngạc nhiên):
T=$( mktemp -t foo.XXX ) ; chown <username> $T
Nếu thất bại root
, tên tài khoản không hợp lệ.
Nếu nó không thành root
người dùng, hãy phân tích đầu ra có thể cục bộ cho Hoạt động không được phép hoặc người dùng không hợp lệ (hoặc tương đương). Đặt LANG
trước để làm điều này đáng tin cậy.
if id -u "$1" >/dev/null 2>&1; then
...