#!/bin/Bash while : DoRead-P">>>"user [["$user"="Q"]] || [["$user"="Q"]] &&Break [[-Z $user]] &&ContinueID$user &>/dev/NULL [[ $? -eq0]] &&Cat/etc/passwd|awk-F:'{print $, $NF}'|grep$user | |Echo "User not exist" Done
The script implements the target to determine whether the user exists
Main ideas
The while do statement implements the loop
Add variable $user exit mechanism use "| |", "&&", respectively, with operations and or operations, to loop out.
[[-Z $user]] determine if $user is null continue jumps into the next loop
$? The exit state of the last command, or the return value of the function
Determines whether the print profile is in the row ($NF to the last field) as a null value
By the way, recall the comparison size parameters in the shell script
-eq//equals
-ne//Not equal to
-GT//greater than
-LT//Less than
-ge//greater than or equal
-le//less than or equal to
Shell Scripting Exercise 1