Saya akan mengatakan bahwa Anda ingin mengandalkan /etc/passwd
dan serupa (misalnya /etc/shadow
untuk sistem berbasis Shadow; pada catatan-off-topik, beberapa sistem yang serupa mungkin menggunakan /etc/master.passwd
atau file-file semacam itu).
The /etc/passwd
biasanya diperlakukan sebagai keputusan otoritatif mutlak pada apakah pengguna ada atau tidak. Jika Anda menggunakan salah satu metode lain yang dijelaskan pada halaman ini, dan jika metode lain menunjuk ke pengguna yang sudah ada tetapi /etc/passwd
tidak, maka saya akan mengatakan bahwa pengguna tidak ada dengan benar pada sistem, dengan definisi standar paling umum yang perangkat lunak kemungkinan akan bergantung.
Yang mengatakan, saya akan melemparkan cara lain untuk menambah campuran beberapa opsi lain yang bisa digunakan.
ls -l /home | grep ^customUserName$<BR>
echo $?
Jelas, ganti "customuserName" dengan nama pengguna yang ingin Anda periksa. Ganti / beranda dengan / pengguna jika itu yang digunakan sistem Anda. Ini mungkin tidak menemukan semua pengguna di / etc / passwd jika tidak ada direktori home yang dibuat untuk pengguna tertentu, yang dapat terjadi jika Anda hanya mengimpor pengguna (yaitu, baris teks ke / etc / passwd) dan jika direktori home tidak dibuat kecuali / sampai seseorang login.
if id -u "$1" >/dev/null 2>&1; then
...