Files

80 lines
2.0 KiB
Bash
Raw Permalink Normal View History

2026-06-22 15:35:18 +08:00
#!/bin/bash
cd "$(dirname "$(readlink -f "$0")")"
function help() {
show_sn
show_ver
echo -e "Usage: \n\t$(basename "$0") program_name [program_name ...] \n"
echo -e "Description:"
echo -e "\tCheck the input file(s) version info (EXE/LIB build info)"
echo -e "Example:"
echo -e "\t$(basename "$0") manage /usr/poweroadlib/libprpublicmemory.so"
}
function show_ver() {
echo -e "$(basename "$0") version 1.0.0"
echo "------------------------------------------"
}
function show_sn() {
# show SN
echo "__________________________________________"
# 检查并显示EMS-SN
if [ -f /usr/poweroadlib/.prsn ]; then
echo "EMS-SN: $(cat /usr/poweroadlib/.prsn| tr -d '\0')"
else
echo "EMS-SN: "
fi
# 检查并显示Product-SN
if [ -f /usr/poweroad/.productsn ]; then
echo "Product-SN: $(cat /usr/poweroad/.productsn| tr -d '\0')"
else
echo "Product-SN: "
fi
echo "------------------------------------------"
}
# Check if correct number of arguments is passed:
if [ "$#" -lt 1 ]; then
echo "Error: No arguments provided!"
help
exit 1
fi
for fileName in "${@}"
do
if [ -e "$fileName" ]; then
#echo -e "\n>>>> FileName: $fileName $(md5sum $fileName | awk '{print $1}')"
echo -ne "\nMD5: "; md5sum $fileName
exe_build_info=$(strings "$fileName" | grep 'EXE: build ')
if [ -n "$exe_build_info" ]; then
echo "$exe_build_info"
continue
fi
lib_build_info=$(strings "$fileName" | grep 'LIB: build ')
if [ -n "$lib_build_info" ]; then
echo "$lib_build_info"
continue
fi
echo "❌ Not a PR version file (no EXE/LIB build info found)"
else
if [ "$fileName" == "-v" ] || [ "$fileName" == "-sn" ]; then
show_sn
if [ "$fileName" == "-v" ]; then
show_ver
fi
break
else
echo -e "\n❌ Not found: $fileName"
fi
fi
done