blob: e22da32e743cfa9c7a6f108f894e30368a69dd7d [file] [log] [blame]
#!/bin/bash
#
# Copyright (c) 2024 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
ROOT_DIR=$(realpath "$(dirname "$0")"/../..)
cd "$ROOT_DIR"
# Function to display OS information
get_os_info() {
if [ -f /etc/os-release ]; then
# If available, use /etc/os-release file
. /etc/os-release
echo "Name: $NAME"
echo "Version: $VERSION"
echo "ID: $ID"
echo "ID Like: $ID_LIKE"
elif [ -f /etc/*-release ]; then
# If /etc/os-release is not available, use other available /etc/*-release file
echo "OS Information from /etc/*-release:"
cat /etc/*-release
else
# Print a message if unable to determine OS information
echo "Cannot determine OS information."
fi
}
# Function to display kernel information
get_kernel_info() {
echo "Kernel Information:"
uname -a | fold -w 88 -s
}
# Function to display CPU information
get_cpu_info() {
echo "CPU Information:"
lscpu | grep -E "^Architecture:|^CPU op-mode\(s\):|^CPU\(s\):|^Vendor ID:|^Model name:|^CPU max MHz:|^CPU min MHz:" |
sed 's/^[ \t]*//;s/[ \t]*$//'
}
# Function to display memory information
get_memory_info() {
echo "Memory Information:"
free -h
}
# Call the functions to display the information
get_os_info
echo
get_kernel_info
echo
get_cpu_info
echo
get_memory_info