當前位置:首頁 » 編程軟體 » shell安裝腳本

shell安裝腳本

發布時間: 2023-01-19 01:23:13

Ⅰ 如何在Windows下運行linux shell腳本

使用的Windows的系統,而想在Windows電腦中進行直接shell的腳本,而不用再進行學習其它的腳本語言。下面是我跟大家分享的是如何在Windows下運行linux shell腳本,歡迎大家來閱讀學習。

在Windows下運行linux shell腳本的方法

工具/原料

Windows

git

方法/步驟

首先電腦中需要安裝的是git的應用程序,安裝完成之後,可以在開始菜單進行查看。

Ⅱ 環境搭建-CentOS 7上通過Shell腳本自動化安裝Harbor

  最近在搭建 Kubernetes 1.14 版本,過程中涉及各種組件的安裝配置,所以打算通過腳本自動化的部署配置這些組件,本文主要描述在 CentOS 7上通過Shell腳本自動化安裝Harbor,上一篇是7月5號寫的,又偷懶了十多天。

環境搭建-CentOS 7上通過腳本自動化部署JDK 8
環境搭建-CentOS 7上通過Shell腳本自動化修改機器名並配置靜態IP
環境搭建-CentOS 7上通過Shell腳本自動化配置免密登錄
環境搭建-CentOS 7上通過Shell腳本自動化安裝Harbor

  安裝 Harbor 的步驟在這里不做詳細列出,具體可參看筆者的這篇文章- 環境搭建-CentOS下安裝Harbor鏡像倉庫 ,本文和這篇文章的不同之處在於 Harbor 的版本,本文採用的是1.8.1,之前使用的是1.5.1,最大的不同是配置文件的不同,詳細可以參看 GitHub 中 release 介紹,配置文件由之前的 harbor.cfg 變更為 harbor.yml:

詳細的腳本如下:

Ⅲ 使用shell腳本實現批處理安裝apk

在智能終端的性能測試中,經常需要安裝大量的apk使用來測試設備的流暢性,如果使用手工安裝不免效果很低還特別枯燥

安裝apk命令:adb install testapk         

如果是系統應用,adb insatll是無法直接安裝的,必須覆蓋安裝,adb insatll -r testapk

1)此處介紹在ubuntu環境下如果使用批處理快捷的安裝apk,執行此shell文件需要cd進入apk文件夾

Ⅳ 在ubuntu中如何安裝shell 腳本程序

jdk源里有

腳本就chmod 755 XX
sudo ./XXX

ubuntu下最好不要用sh XX來運行腳本
ubuntu默認的system shell為dash,只有嚴格符合posix標準的腳本才能用sh XX來運行
否則用bash XX或./XXX比較好

Ⅳ 如何在Windows下運行linux shell腳本

1、首先電腦中需要安裝的是git的應用程序,安裝完成之後,可以在開始菜單進行查看。

2、並需要配置好git的bin,配置環境變數,把bin的絕對路徑復制到環境變數中path。

3、配置git的環境變數之後,在任意文件進行創建一個為mkdir.sh,文件名可以是隨意的結尾需要為.sh。

4、然後在sh的文件中進行輸入#!/bin/shtoucha.txtsleep10echo"testtesttesttest">>a.txt

創建一個為txt文件後testtesttesttest寫入到txt文件中。

5、然後進行雙擊.sh的文件,會彈出git的命令窗口,根據代碼的執行的時間窗口顯示多久。

6、然後就會自動生成一個a.txt的文件。

7、並會在a.txt文件中寫入為「testtesttesttest」的一段文字,即代表運行linuxshell腳本成功。

Ⅵ Centos7一鍵安裝jdk1.8 shell腳本

jdk-8u251-linux-x64.tar.gz

1、vi install_java.sh 腳本

2、將 install_java.sh 腳本與安裝tar包放在同一目錄下,運行此腳本進行自動化安裝

3、給腳本文件加執行許可權

4、運行腳本文件,進行安裝

Ⅶ 2、Mysql自動安裝8.0Shell腳本

如果您覺得文本對您有幫助,請打賞,謝謝。

新建執行腳本:mysql_install.sh,並添加執行許可權

#!/bin/bash

#zhouyihua V0.1 2021.07.08

#For centos 7.0 & 8.0

#v 0.2

# add DNS

echo "----------  Add DNS  --------"

echo "nameserver 8.8.8.8" >> /etc/resolv.conf

#stop firewall

systemctl stop firewalld

if [ $? -ne 0 ]; then

    echo "Firewall stop failed"

else

    echo "Firewall stop success"

fi

#download mysql yum source

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

#install mysql yum source

rpm -ivh mysql80-community-release-el7-3.noarch.rpm

#enable 5.7

#sed -i '21s/enabled=0/enabled=1/g' /etc/yum.repos.d/mysql-community.repo

#sed -i '21s/enabled=0/enabled=1/g' /etc/yum.repos.d/mysql-community.repo

#disable 8.0

#sed -i '28s/enabled=1/enabled=0/g' /etc/yum.repos.d/mysql-community.repo

#install mysql

yum -y mole disable mysql

yum -y remove mariadb-libs

yum install -y mysql-community-server

#config mysql

echo "-----------  Config my.cnf  ----------"

sed -i '/\[mysqld\]/a\lower_case_table_names=1' /etc/my.cnf

sed -i '/\[mysqld\]/a\skip-grant-tables' /etc/my.cnf

#start mysql

echo "----------  Starting mysql service  ----------"

systemctl start mysqld.service

mysql -uroot -p123456  << EOF

    use mysql;

    update user set authentication_string='' where user='root' ;

    flush privileges;

    ALTER user 'root'@'localhost' IDENTIFIED BY '?CZJh8JWxvH';

EOF

echo "----------  Annotation skip grant tables in my.cnf    ----------"

sed -i 's/skip-grant-tables/\#skip-grant-tables/g' /etc/my.cnf

echo "----------  Restart mysql service  ----------"

systemctl restart mysqld.service

echo "----------  Grant all privileges  ----------"

mysql -uroot -p'Oracle1234!@#$'    --connect-expired-password -e "alter user 'root'@'localhost' identified by 'Oracle1234!@#$';"

mysql -u root -p'Oracle1234!@#$'  << EOF

    use mysql;

    CREATE USER 'maxkey'@'%' IDENTIFIED BY 'Oracle1234!@#$';

    GRANT ALL ON *.* TO 'maxkey'@'%';

EOF

參考:

先設置grant_skip_tables

  1.  use mysql

  2. update user set authentication_string='' where user='root' ;    如果這個欄位有值,先置為空

  3. flush privileges    刷新許可權表

  4.ALTER user 'root'@'localhost' IDENTIFIED BY 'Tianya1234'    修改root 密碼

參考:https://blog.csdn.net/qq_27820551/article/details/101488430

Ⅷ 用shell腳本怎麼實現安裝升級版本

A:本腳本運行的機器,Linux
B:待安裝JDK的機器, Linux
首先在腳本運行的機器A上確定可以ssh無密碼登錄到待安裝jdk的機器B上,然後就可以在A上運行本腳本:
復制代碼 代碼如下:

$ ./install-jdk.sh B的IP
or:
復制代碼 代碼如下:

$ ./install-jdk.sh "B的IP" "JDK的URI"
就可以在機器B上安裝JDK。jdk使用的tar包需要用戶自己設定DEFAULT_JDK_SRC=?,保證可以wget得到即可。下面是全部腳本內容:
復制代碼 代碼如下:

#!/bin/bash
#
# @file
# install-jdk.sh
#
# @date
# 2013-12-19
#
# @author
# cheungmine
#
# @version
# 0.0.1pre
#
# @usage:
# ./install-jdk.sh 192.168.122.206
#
################################################################################
. common.sh

#***********************************************************
# install_jdk
# install jdk on machine: /usr/local/lib
#
# Parameters:
# machine - root@ipaddr
# jdkUri - uri for fetching tarball
#
# Example:
#
# install_jdk [email protected] ftp://vm-ftp/pub/tarball/jdk-7u67-linux-x64.tar.gz
#
#***********************************************************
. common.sh

# YOU MIGHT CHANGE BELOW LINE TO GET YOUR JDK TARBALL:
DEFAULT_JDK_SRC="ftp://vm-ftp/pub/tarball/jdk-7u67-linux-x64.tar.gz"

# DO NOT CHANGE BELOW TWO LINES:
INSTALL_DIR="/usr/local/lib/java"
LOCAL_DIR="./.tmp"

function install_jdk() {
echo -e "<INFO> install jdk on machine: $1"

local DEST_LOGIN=$1
local JDK_URI=$2
local TAR=$(basename $JDK_URI)

echo -e "<INFO> jdk: '$JDK_URI'"

wget -c $JDK_URI -P $LOCAL_DIR -O $LOCAL_DIR/$TAR

$(is_empty_dir "$LOCAL_DIR/jdk_untar")
local ret=$?

case $ret in
$DIR_NOT_EXISTED)
mkdir -p $LOCAL_DIR/jdk_untar
;;
$DIR_IS_EMPTY)
;;
$DIR_NOT_EMPTY)
rm -rf $LOCAL_DIR/jdk_untar/*
;;
*)
exit $ERR_FATAL_ERROR
;;
esac

# untar to jdk_untar
tar -zxf $LOCAL_DIR/$TAR -C $LOCAL_DIR/jdk_untar

$(is_empty_dir "$LOCAL_DIR/jdk_untar")
local ret=$?

if [ "$ret" -eq "$DIR_NOT_EMPTY" ]; then
local jdk_home=`ls $LOCAL_DIR/jdk_untar 2>/dev/null`
echo $jdk_home
else
exit $ERR_FATAL_ERROR
fi

echo -e "<INFO> create folder on: $DEST_LOGIN:$INSTALL_DIR"
local ret=`ssh $DEST_LOGIN "mkdir $INSTALL_DIR"`

echo -e "<INFO> $jdk_home/ to: $DEST_LOGIN:$INSTALL_DIR/"
local ret=`scp -r $LOCAL_DIR/jdk_untar/$jdk_home $DEST_LOGIN:$INSTALL_DIR`

# remove local tar
rm -rf $LOCAL_DIR/jdk_untar

local DEST_JAVA_HOME=$INSTALL_DIR/$jdk_home

echo -e "<TODO> remove old settings for install_jdk in /etc/profile"

echo -e "<INFO> set /etc/profile: JAVA_HOME=$DEST_JAVA_HOME"
local ret=`ssh $DEST_LOGIN "echo '' >> /etc/profile"`
local ret=`ssh $DEST_LOGIN "echo '#!{{[email protected]==>' >> /etc/profile"`

local ret=`ssh $DEST_LOGIN "echo 'export JAVA_HOME=$DEST_JAVA_HOME' >> /etc/profile"`
local ret=`ssh $DEST_LOGIN "echo 'export CLASSPATH=.:\\$JAVA_HOME/lib/tools.jar:\\$JAVA_HOME/lib/dt.jar' >> /etc/profile"`
local ret=`ssh $DEST_LOGIN "echo 'export PATH=\\$JAVA_HOME/bin:\\$JAVA_HOME/jre/bin:\\$PATH' >> /etc/profile"`

local ret=`ssh $DEST_LOGIN "echo '#!<[email protected]}}'>> /etc/profile"`

local ret=`ssh $DEST_LOGIN ". /etc/profile"`
}

function uninstall_jdk() {
echo -e "<TODO> uninstall jdk from: $1"
}

#=======================================================================
# ---- main() ----
if [ -n $1 ]; then
DEST_IP=$1
JDK_SRC=$DEFAULT_JDK_SRC

if [ $# == 2 ]; then
JDK_SRC=$2
fi

echo -e "<INFO> install jdk on '$DEST_IP', jdk: '$JDK_SRC'"

install_jdk "root@$DEST_IP" "$JDK_SRC"
fi

Ⅸ 在Linux shell腳本中,安裝過程中如何實現自動選擇安裝選項

在Linux shell腳本中,安裝過程中如何實現自動選擇安裝選項?
Linux中shell腳本運行時經常需要進行交互,比如安裝軟體的過程中對license聲明的確認,需要輸入yes,回車之類的確認信息。這個在自動化安裝的時候就會是個問題。

通常對於這個問題比較靈活的解決方法就是TCL的Expect。但Expect還需要另外安裝,平台通用性不高,比較麻煩。

另外一些簡單的方法倒也是有,不過可用性不高,特別是對要求多次交互就吃力了。但怎麼說其還是能解決大多數的問題,因為復雜的情況還是比較少的。比 如要一個調用一個安裝腳本 : installWAS.sh, 這個腳本要求輸入回車,則可以:echo | installWAS.sh;如果要求輸入yes|no,加回車,則可以echo yes|installWAS.sh. 這下自動化安裝就有希望了。

再有一下的代碼也可以帶來一些思路:

[0 No.2015 huan@huan ~/tmp]$ cat foo read -s -n1 -p "Press any key to continue ... " echo "Your inputs: $REPLY"
[0 No.2016 huan@huan ~/tmp]$ ./foo < /dev/null Your inputs:
[0 No.2017 huan@huan ~/tmp]$

Ⅹ shell腳本 自動安裝問題

給你點思路:

  1. 對每個程序單獨使用函數來寫最後調用,如果在執行某個函數的時候中斷,可以單獨調用函數來執行

  2. 在安裝的同時來判斷程序(比如判斷上一條命令是否執行成功,或判斷程序安裝後的文件,或者埠是否存在)

  3. 在每塊程序安裝時使用shell在前一行打上便簽來注視說明

  4. 使用sh -x 腳本 來觀察腳本執行到那裡報錯,或中斷。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:707
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:970
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:679
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:831
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:738
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1078
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:309
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:190
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:876
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:833