DEV Community

Anass Assim
Anass Assim

Posted on • Edited on

SysInfo Script

SysInfo 🖥️: Track System Information 📊

  • This script gathers various system information such as disk usage, RAM usage, processes, IP addresses, last login details, SSH login information, and currently logged-in users.

Image description

Description 📝

The script utilizes several Linux commands to fetch and calculate system metrics, providing a snapshot of the system's current state.

Prerequisites ⚙️

Before running the script, ensure you have bc installed. If you're using Debian or a Debian-based distribution (like Ubuntu), you can install it with:

sudo apt-get update
 sudo apt-get install bc
Enter fullscreen mode Exit fullscreen mode

Installation 📥

Clone the repository:

 git clone https://github.com/ciscoAnass/SysInfo.git
 cd SysInfo
Enter fullscreen mode Exit fullscreen mode

Make the script executable:

chmod +x SysInfo.sh
Enter fullscreen mode Exit fullscreen mode

Running the Script on Every Terminal Launch (Optional) 🚀

  • If you want the script to run every time you open a terminal session, you can append the script path to ~/.bashrc using the following command:
echo "~/SysInfo/SysInfo.sh" >> ~/.bashrc
Enter fullscreen mode Exit fullscreen mode
  • This command appends the path to your script to the end of ~/.bashrc.

  • After appending, source ~/.bashrc to apply the changes:

source ~/.bashrc
Enter fullscreen mode Exit fullscreen mode
  • Now, the script will run automatically every time you open a new terminal session.

Creating a Command Alias 🔧

  • If you want to create a command alias so you can execute the script by simply typing sysinfo, follow these steps:
echo "alias sysinfo='~/SysInfo/SysInfo.sh'" >> ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

-Source ~/.bashrc to apply the changes:*

source ~/.bashrc
Enter fullscreen mode Exit fullscreen mode

Now, you can simply type sysinfo in your terminal to run the script.

Example Output 🖨️

After running the script, you will see output similar to:

System Information of <current_date>

Usage of / :             <DiskPer> of <DiskCapacity>
Memory Usage :           <RAM>%
Memory Swap :            <Swap>%
Total Processes :        <Processes>
Root Processes :         <RootProcesses>
IPv4 address  :         <ipv4>
IPv6 address :          <ipv6>
Last Login :            <lastlog>

<ssh_info>

Logged Users :           <LoggedUsers>
Enter fullscreen mode Exit fullscreen mode

Contributing 🤝

  • Contributions are welcome! Feel free to fork the repository and submit pull requests.

Top comments (0)