Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #!/bin/bash
  2. # The function is used to obtain distribution information
  3. get_distro_info() {
  4. local distro_id=$(lsb_release -i -s 2>/dev/null)
  5. local distro_version=$(lsb_release -r -s 2>/dev/null)
  6. local kernel_version=$(uname -r)
  7. # If lsd_release is not available, try parsing the/etc/* - release file
  8. if [ -z "$distro_id" ] || [ -z "$distro_version" ]; then
  9. distro_id=$(grep '^ID=' /etc/*-release | cut -d= -f2 | tr -d '"')
  10. distro_version=$(grep '^VERSION_ID=' /etc/*-release | cut -d= -f2 | tr -d '"')
  11. fi
  12. echo "$distro_id $distro_version (Kernel version: $kernel_version)"
  13. }
  14. # get Git repository name
  15. git_repo_name=''
  16. if git rev-parse --is-inside-work-tree > /dev/null 2>&1; then
  17. git_repo_name=$(basename "$(git rev-parse --show-toplevel)")
  18. if [ $? -ne 0 ]; then
  19. git_repo_name="(Can't get repo name)"
  20. fi
  21. else
  22. git_repo_name="It NOT a Git repo"
  23. fi
  24. # get CPU type
  25. cpu_model=$(uname -m)
  26. # get memory size
  27. memory_size=$(free -h | grep Mem | awk '{print $2}')
  28. # get docker version
  29. docker_version=''
  30. if command -v docker &> /dev/null; then
  31. docker_version=$(docker --version | cut -d ' ' -f3)
  32. else
  33. docker_version="Docker not installed"
  34. fi
  35. # get python version
  36. python_version=''
  37. if command -v python &> /dev/null; then
  38. python_version=$(python --version | cut -d ' ' -f2)
  39. else
  40. python_version="Python not installed"
  41. fi
  42. # Print all information
  43. echo "Current Repository: $git_repo_name"
  44. # get Commit ID
  45. git_version=$(git log -1 --pretty=format:'%h')
  46. if [ -z "$git_version" ]; then
  47. echo "Commit Id: The current directory is not a Git repository, or the Git command is not installed."
  48. else
  49. echo "Commit Id: $git_version"
  50. fi
  51. echo "Operating system: $(get_distro_info)"
  52. echo "CPU Type: $cpu_model"
  53. echo "Memory: $memory_size"
  54. echo "Docker Version: $docker_version"
  55. echo "Python Version: $python_version"