Introduction
In this project, you'll learn how to create a random password generator script that meets specific security requirements. The script will generate a 12-character password that includes at least one digit, one uppercase letter, one lowercase letter, and one special character from the set ><+-{}:.&;
. This project will provide you with hands-on experience in scripting and working with random data.
๐ Preview
$ cd /home/labex/project
$ sh genpass.sh
## Example
2Dsxw9+xS:27
๐ฏ Tasks
In this project, you will:
- Set up the project environment and create the necessary script file.
- Implement the logic to generate a random password that meets the specified complexity requirements.
- Test the password generator script to ensure it functions correctly.
๐ Achievements
Upon completing this project, you will be able to:
- Understand the process of creating a random password generator script.
- Implement a password generation algorithm that satisfies specific character type requirements.
- Test and validate the generated passwords to confirm they meet the desired criteria.
Skills Graph
%%%%{init: {'theme':'neutral'}}%%%%
flowchart RL
linux(("`Linux`")) -.-> linux/BasicSystemCommandsGroup(["`Basic System Commands`"])
linux(("`Linux`")) -.-> linux/BasicFileOperationsGroup(["`Basic File Operations`"])
linux(("`Linux`")) -.-> linux/FileandDirectoryManagementGroup(["`File and Directory Management`"])
linux(("`Linux`")) -.-> linux/TextProcessingGroup(["`Text Processing`"])
linux(("`Linux`")) -.-> linux/VersionControlandTextEditorsGroup(["`Version Control and Text Editors`"])
linux/BasicSystemCommandsGroup -.-> linux/echo("`Text Display`")
linux/BasicSystemCommandsGroup -.-> linux/test("`Condition Testing`")
linux/BasicFileOperationsGroup -.-> linux/touch("`File Creating/Updating`")
linux/FileandDirectoryManagementGroup -.-> linux/cd("`Directory Changing`")
linux/TextProcessingGroup -.-> linux/tr("`Character Translating`")
linux/VersionControlandTextEditorsGroup -.-> linux/vim("`Text Editing`")
subgraph Lab Skills
linux/echo -.-> lab-301485{{"`Random Password Generator Development`"}}
linux/test -.-> lab-301485{{"`Random Password Generator Development`"}}
linux/touch -.-> lab-301485{{"`Random Password Generator Development`"}}
linux/cd -.-> lab-301485{{"`Random Password Generator Development`"}}
linux/tr -.-> lab-301485{{"`Random Password Generator Development`"}}
linux/vim -.-> lab-301485{{"`Random Password Generator Development`"}}
end