首页 > 系统相关 >shell脚本之判断不同的系统间软件的安装方法

shell脚本之判断不同的系统间软件的安装方法

时间:2023-02-02 11:45:24浏览次数:32  
标签:脚本 shell exists echo command install 软件 curl 安装

示例一:通过判断命令类型选择不同系统的安装方式

#!/bin/bash
command_exists () {
    type "$1" &> /dev/null;
}

install_curl () {
    if command_exists apt-get; then
        echo "apt-get -y update
apt-get -y -q install curl"
    elif command_exists yum; then
        echo "yum -y install curl"
    fi
    if ! command_exists curl;then
        echo "command curl not found"
        exit 1;
    fi
}

install_curl

        如果是debian系,就用apt-get;如果是CentOS系,就用yum。type命令用于判断指定的命令类型,以选择不同的安装方式。

示例二:自主选择安装软件的方式

        同一个项目可以选择用docker方式安装,也可以使用rpm或者deb的方式安装。

#!/bin/bash

read_install_method () {
    echo "选择Y使用docker安装。选择N使用RPM/DEB安装。"
    echo "注意事项"
    echo "帮助文档连接"
    read -p "Install with Docker [Y/N/C]? " choice
    case "$choice" in
        y|Y )
            DOCKER="true";
        ;;
        n|N )
            DOCKER="false";
        ;;
        c|C )
            exit 0;
        ;;
         * )
            echo "Please, enter Y, N or C to cancel";
        ;;
     esac
    if [ "$DOCKER" == "" ]; then
        read_install_method;
    fi

}

read_install_method

if [ "$DOCKER" == "true" ]; then
    echo "用docker方式安装"
else
    echo "用rpm或deb方式安装"
fi

标签:脚本,shell,exists,echo,command,install,软件,curl,安装
From: https://www.cnblogs.com/zhangzhide/p/17085518.html

相关文章

  • shell的变量
    变量含义学生时代所学的数学方程式,如x=1,y=2,那会称之为x,y是未知数对于计算机角度,x=1,y=2等于定义了两个变量,名字分别是x,y,且赋值了1和2变量是暂时存储数据的地方,变量临时存......
  • Linux crontab和开机自启脚本
    由于测试机经常会出现断电的情况,则需要在断电重启后,运行一些脚本,起到初始化的作用这里采用crontab命令的方式进行设置一、crontab基本用法1.1cron服务cron是一个linux......
  • 学习nc反弹shell过程中所想到的
      nc反弹shell可以使用如下命令:nc-e/bin/bashipport   但是如果nc的版本没有e选项,那么:mkfifo/tmp/f#或者mknod/tmp/fpcat/tmp/f|/bin/sh-i2>&1|......
  • shell脚本之if,case语句与for循环
    一、if语句if[条件]then命令1 命令2…..elseif[条件]then命令1 命令2….else命令1 命令2…..fifi if语句实例vima.sh......
  • python爬虫入门脚本示例
    例如在某个目录xx下,有个普通的文件,有些文件后缀*.txt,有的却没有后缀名。现在写一个程序希望将xx目录下没有后缀名的文件改成*.txt结尾。知识点:需要用到python的os模块直接......
  • 免费修复老照片软件有哪些?修复老照片的工具分享!​
    免费修复老照片软件有哪些?很多小伙伴最近都能在各个平台上刷到修复老照片的视频,很多小伙伴突然也是会想起来,我家也有老照片怎么去修复呢?这种技术是需要我们通过软件来进行完......
  • shell基础
    shell开头#!/bin/bash#!/bin/sh#!/usr/bin/awk#!/usr/bin/envpython#!/usr/bin/perl这几行在第一行,不再第一行就是注释不用的话就用相关解释器带上文件名执行......
  • 通过脚本将unity3D模型转出图片
    usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEditor;usingUnityEngine;publicclassChangeToTexture:MonoBehaviour{//这里是要导出模型......
  • Linux系统Shell脚本第四章:shell函数
    目录一、shell函数1、函数的作用2、函数使用步骤3、定义函数基本格式4、函数变量5、退出函数6、函数位置变量与脚本位置变量区别 一、shell函数1、函数的作用定......
  • m基于matlab的软件无线电注水功率分配算法性能仿真,对比C-PF,C-CUBP,C-DUBP等
    1.算法描述注水算法是根据某种准则,并根据信道状况对发送功率进行自适应分配,通常是信道状况好的时刻,多分配功率,信道差的时候,少分配功率,从而最大化传输速率。注水算......