This repository documents my hands-on journey of learning Linux commands using Windows Subsystem for Linux (WSL). Every command included in this repository has been executed, tested, and documented with explanations, examples, terminal output, and screenshots.
The goal of this project is to build a solid foundation in Linux while maintaining professional documentation that demonstrates both practical skills and understanding.
This repository is organized into sections, with each section covering a specific area of Linux. Every command includes its purpose, syntax, examples, real-world use cases, screenshots, and key takeaways.
- Aspiring DevOps Engineers
- Cloud Engineers
- Linux Beginners
- KCNA Candidates
- Azure Administrators
Before using this repository, you should have:
- A Linux environment (Ubuntu, WSL, or a Linux VM)
- Basic familiarity with the terminal
- A text editor such as VS Code (optional)
- Git installed (recommended for following along)
Run the following commands to confirm your setup:
uname -a
git --version
bash --versionIf the commands return version information, you're ready to begin.
pwd— Display the current working directory.ls— List files and directories.cd— Change the current working directory.
mkdir— Create directories.touch— Create empty files.cp— Copy files and directories.mv— Move or rename files and directories.rm— Remove files and directories.cat— Display file contents.less— View file contents one page at a time.head— Display the beginning of a file.tail— Display the end of a file.
wc— Count lines, words, and bytes.sort— Sort text alphabetically or numerically.uniq— Remove duplicate lines.cut— Extract specific columns or fields from text.tr— Translate or replace characters.tee— Write output to both the terminal and a file.
find— Search for files and directories.locate— Find files quickly using a database.grep— Search for text patterns in files.which— Locate the executable of a command.whereis— Find a command's binary, source, and manual pages.
- 05. Permissions —
chmod,chown,umask - 06. System Information —
whoami,hostname,uname,df,du,free,uptime - 07. Process Management —
ps,top,kill,pkill,jobs,bg,fg - 08. Archives & Compression —
tar,gzip,gunzip,zip,unzip - 09. Networking —
ping,curl,wget,ip,ss,netstat
Progress: 23 commands documented
This project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! If you'd like to improve this repository:
- Fork the repository.
- Create a feature branch.
- Make your changes.
- Commit with a clear message.
- Open a pull request.
Please ensure all documentation is accurate, concise, and includes practical examples where applicable.
Documentation and configuration updates are maintained as part of the project's ongoing development.