当前位置: 首页 > news >正文

网站建设在线视频卡顿小红书营销策划方案

网站建设在线视频卡顿,小红书营销策划方案,做调查用哪个网站,公益 建网站How to build a localized sdkman mirror service 概述想法 概述 从官方给出的安装说明#xff0c;我们可以知道#xff0c;官方给出的安装脚本是基于脚本https://get.sdkman.io/进行安装的#xff0c;下面是该脚本的全部内容。 #!/bin/bash # # Copyright 2017 Marco V… How to build a localized sdkman mirror service 概述想法 概述 从官方给出的安装说明我们可以知道官方给出的安装脚本是基于脚本https://get.sdkman.io/进行安装的下面是该脚本的全部内容。 #!/bin/bash # # Copyright 2017 Marco Vermeulen # # 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. ## install:- channel: stable; cliVersion: 5.18.2; cliNativeVersion: 0.4.6; api: https://api.sdkman.io/2set -etrack_last_command() {last_command$current_commandcurrent_command$BASH_COMMAND } trap track_last_command DEBUGecho_failed_command() {local exit_code$?if [[ $exit_code ! 0 ]]; thenecho $last_command: command failed with exit code $exit_code.fi } trap echo_failed_command EXIT# Global variables export SDKMAN_SERVICEhttps://api.sdkman.io/2 export SDKMAN_VERSION5.18.2 export SDKMAN_NATIVE_VERSION0.4.6if [ -z $SDKMAN_DIR ]; thenSDKMAN_DIR$HOME/.sdkmanSDKMAN_DIR_RAW$HOME/.sdkman elseSDKMAN_DIR_RAW$SDKMAN_DIR fi export SDKMAN_DIR# Local variables sdkman_src_folder${SDKMAN_DIR}/src sdkman_libexec_folder${SDKMAN_DIR}/libexec sdkman_tmp_folder${SDKMAN_DIR}/tmp sdkman_ext_folder${SDKMAN_DIR}/ext sdkman_etc_folder${SDKMAN_DIR}/etc sdkman_var_folder${SDKMAN_DIR}/var sdkman_candidates_folder${SDKMAN_DIR}/candidates sdkman_config_file${sdkman_etc_folder}/config sdkman_platform_file${sdkman_var_folder}/platform sdkman_bash_profile${HOME}/.bash_profile sdkman_profile${HOME}/.profile sdkman_bashrc${HOME}/.bashrc sdkman_zshrc${ZDOTDIR:-${HOME}}/.zshrcsdkman_init_snippet$( cat EOF #THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!! export SDKMAN_DIR$SDKMAN_DIR_RAW [[ -s ${SDKMAN_DIR_RAW}/bin/sdkman-init.sh ]] source ${SDKMAN_DIR_RAW}/bin/sdkman-init.sh EOF )# OS specific support (must be true or false). cygwinfalse; darwinfalse; solarisfalse; freebsdfalse; case $(uname) inCYGWIN*)cygwintrue;;Darwin*)darwintrue;;SunOS*)solaristrue;;FreeBSD*)freebsdtrue esacecho echo -syyyyyyys: echo /yho: -yd. echo /yh/ m. echo .oho. hy . echo .sh/ :N -/o dyyo:. echo .yh: M- -/osysoym :hs -sys: hhyssssssssy echo .sh: N: ms/- yy.yh- -hy. .N-N. echo od/ N- -/oM- ddd sd: hNNm -N: echo :do .M. dMMM- ms. /d NMMs do echo .yy- :N mMMM. - -hy. /MMM: yh echo d :/oo/ -/osyh/ossssssdNMM .sh: yMMN /m. echo -dh- :ymNMMMMy -/shmNm-:N/-. .sN /N- NMMy .m/ echo oNs -hysosmMMMMydmNmds-.:ohm : sd :MMM/ yy echo .hN /d: -MMMmhs/-. .MMMh .ss- yy sMMN :N. echo :mN/ N/ o/- :MMMo MMMN- . ds mMMh do echo /NN/ N....--:/oooosooo:sMMM: hMMMM: my .m -MMM :N. echo /NMo -ooooo/:-.......:hNMN. NMMMd .MM/ -m: oMMN. hs echo -NMd :mm -MMMm- .s/ -MMm. /m- mMMd -N. echo mMM/ .- /MMh. -dMo -MMMy od. .MMMs..---yh echo MMM. sNo.sNMM :MMMM/ shMMMNmNm- echo mMMM- /--ohmMMM :MMMMm. hyymmmdddo echo MMMMh. -yy/yMMM/ :MMMMMy -sm:...-:-. echo dMMMMmo-...-:/osyhddddho. shdh. hMMM: :MmMMMM/ ./yy/ :sys/sh/ echo .dMMMMMMmdddddmmNMMMNNNNNMMMMMs sNdo- dMMM- -/yd/MMMMm-:sy. :hs- /N echo /ymNNNNNNNmmdys/::----/dMMm: m- mMMMohmo/. sMMMMdo- .om: sh echo .-----/. .-hh/ od. NMMNmds/ mmy: mMy :yy. echo /moyso//ossso:. .yy dy: .. :MMMN---/oys: echo /m: .-:::- /d MMMMMMMNh: echo MN/ -yh. hddhy. echo /MM .sh: echo :NMo -sh/ echo -NMs /yy: echo .NMy :sh. echo mMm ./yds- echo dMMMmyo:-..-:oymNy: echo NMMMMMMMMMMMMMMMMms: echo -shmNMMMNmdy: echo echo echo Now attempting installation... echo echo # Sanity checksecho Looking for a previous installation of SDKMAN... if [ -d $SDKMAN_DIR ]; thenecho SDKMAN found.echo echo echo You already have SDKMAN installed.echo SDKMAN was found at:echo echo ${SDKMAN_DIR}echo echo Please consider running the following if you need to upgrade.echo echo $ sdk selfupdate forceecho echo echo exit 0 fiecho Looking for unzip... if ! command -v unzip /dev/null; thenecho Not found.echo echo Please install unzip on your system using your favourite package manager.echo echo Restart after installing unzip.echo echo exit 1 fiecho Looking for zip... if ! command -v zip /dev/null; thenecho Not found.echo echo Please install zip on your system using your favourite package manager.echo echo Restart after installing zip.echo echo exit 1 fiecho Looking for curl... if ! command -v curl /dev/null; thenecho Not found.echo echo echo Please install curl on your system using your favourite package manager.echo echo Restart after installing curl.echo echo exit 1 fiif [[ $solaris true ]]; thenecho Looking for gsed...if [ -z $(which gsed) ]; thenecho Not found.echo echo echo Please install gsed on your solaris system.echo echo SDKMAN uses gsed extensively.echo echo Restart after installing gsed.echo echo exit 1fi elseecho Looking for sed...if [ -z $(command -v sed) ]; thenecho Not found.echo echo echo Please install sed on your system using your favourite package manager.echo echo Restart after installing sed.echo echo exit 1fi fiecho Installing SDKMAN scripts...# Create directory structureecho Create distribution directories... mkdir -p $sdkman_tmp_folder mkdir -p $sdkman_ext_folder mkdir -p $sdkman_etc_folder mkdir -p $sdkman_var_folder mkdir -p $sdkman_candidates_folderecho Getting available candidates... SDKMAN_CANDIDATES_CSV$(curl -s ${SDKMAN_SERVICE}/candidates/all) echo $SDKMAN_CANDIDATES_CSV ${SDKMAN_DIR}/var/candidatesecho Prime platform file... # infer platform function infer_platform() {local kernellocal machinekernel$(uname -s)machine$(uname -m)case $kernel inLinux)case $machine ini686)echo linuxx32;;x86_64)echo linuxx64;;armv6l)echo linuxarm32hf;;armv7l)echo linuxarm32hf;;armv8l)echo linuxarm32hf;;aarch64)echo linuxarm64;;*)echo exotic;;esac;;Darwin)case $machine inx86_64)echo darwinx64;;arm64)echo darwinarm64;;*)echo darwinx64;;esac;;MSYS*|MINGW*)case $machine inx86_64)echo windowsx64;;*)echo exotic;;esac;;*)echo exoticesac }export SDKMAN_PLATFORM$(infer_platform)echo $SDKMAN_PLATFORM $sdkman_platform_fileecho Prime the config file... touch $sdkman_config_file echo sdkman_auto_answerfalse $sdkman_config_file if [ -z $ZSH_VERSION -a -z $BASH_VERSION ]; thenecho sdkman_auto_completefalse $sdkman_config_file elseecho sdkman_auto_completetrue $sdkman_config_file fi echo sdkman_auto_envfalse $sdkman_config_file echo sdkman_beta_channelfalse $sdkman_config_file echo sdkman_checksum_enabletrue $sdkman_config_file echo sdkman_colour_enabletrue $sdkman_config_file echo sdkman_curl_connect_timeout7 $sdkman_config_file echo sdkman_curl_max_time10 $sdkman_config_file echo sdkman_debug_modefalse $sdkman_config_file echo sdkman_insecure_sslfalse $sdkman_config_file echo sdkman_selfupdate_featuretrue $sdkman_config_file# script cli distribution echo Installing script cli archive... # fetch distribution sdkman_zip_file${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}.zip echo * Downloading... curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_zip_file$(cygpath -w $sdkman_zip_file) fi unzip -qo $sdkman_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents... rm -f $sdkman_src_folder/* cp -rf ${sdkman_tmp_folder}/sdkman-*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman-* rm -rf $sdkman_zip_fileecho # native cli distribution if [[ $SDKMAN_PLATFORM ! exotic ]]; then echo Installing script cli archive... # fetch distribution sdkman_zip_file${sdkman_tmp_folder}/sdkman-native-${SDKMAN_NATIVE_VERSION}.zip echo * Downloading... curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/native/install/${SDKMAN_NATIVE_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_zip_file$(cygpath -w $sdkman_zip_file) fi unzip -qo $sdkman_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents... rm -f $sdkman_libexec_folder/* cp -rf ${sdkman_tmp_folder}/sdkman-*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman-* rm -rf $sdkman_zip_fileecho fiecho Set version to $SDKMAN_VERSION ... echo $SDKMAN_VERSION ${SDKMAN_DIR}/var/versionecho Set native version to $SDKMAN_NATIVE_VERSION ... echo $SDKMAN_NATIVE_VERSION ${SDKMAN_DIR}/var/version_nativeif [[ $darwin true ]]; thentouch $sdkman_bash_profileecho Attempt update of login bash profile on OSX...if [[ -z $(grep sdkman-init.sh $sdkman_bash_profile) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_bash_profileecho Added sdkman init snippet to $sdkman_bash_profilefi elseecho Attempt update of interactive bash profile on regular UNIX...touch ${sdkman_bashrc}if [[ -z $(grep sdkman-init.sh $sdkman_bashrc) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_bashrcecho Added sdkman init snippet to $sdkman_bashrcfi fiecho Attempt update of zsh profile... touch $sdkman_zshrc if [[ -z $(grep sdkman-init.sh $sdkman_zshrc) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_zshrcecho Updated existing ${sdkman_zshrc} fiecho -e \n\n\nAll done!\n\necho You are subscribed to the STABLE channel.echo echo Please open a new terminal, or run the following in the existing one: echo echo source \${SDKMAN_DIR}/bin/sdkman-init.sh\ echo echo Then issue the following command: echo echo sdk help echo echo Enjoy!!! 在这里我们看到要完成脚本的安装需要从服务器下载两个文件生成一个文件的内容。 第一个文件即 export SDKMAN_SERVICEhttps://api.sdkman.io/2 export SDKMAN_VERSION5.18.2 export SDKMAN_NATIVE_VERSION0.4.6# ...# script cli distribution echo Installing script cli archive... # fetch distribution sdkman_zip_file${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}.zip echo * Downloading... curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_zip_file$(cygpath -w $sdkman_zip_file) fi unzip -qo $sdkman_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents... rm -f $sdkman_src_folder/* cp -rf ${sdkman_tmp_folder}/sdkman-*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman-* rm -rf $sdkman_zip_fileecho 脚本下载文件https://api.sdkman.io/2/broker/download/sdkman/install/5.18.2/linuxx64后重命名为sdkman-版本号.zip比如sdkman-5.18.2.zip将其解压后的内容复制放到~/.sdkman目录。 第二个文件即 export SDKMAN_SERVICEhttps://api.sdkman.io/2 export SDKMAN_VERSION5.18.2 export SDKMAN_NATIVE_VERSION0.4.6# ...# native cli distribution if [[ $SDKMAN_PLATFORM ! exotic ]]; then echo Installing script cli archive... # fetch distribution sdkman_zip_file${sdkman_tmp_folder}/sdkman-native-${SDKMAN_NATIVE_VERSION}.zip echo * Downloading... curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/native/install/${SDKMAN_NATIVE_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_zip_file$(cygpath -w $sdkman_zip_file) fi unzip -qo $sdkman_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents... rm -f $sdkman_libexec_folder/* cp -rf ${sdkman_tmp_folder}/sdkman-*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman-* rm -rf $sdkman_zip_fileecho fi脚本下载文件https://api.sdkman.io/2/broker/download/native/install/0.4.6/linuxx64重命名为sdkman-native-版本号.zip比如sdkman-native-0.4.6.zip将其解压后的内容复制放到~/.sdkman目录。 生成一个文件内容 export SDKMAN_SERVICEhttps://api.sdkman.io/2 export SDKMAN_VERSION5.18.2 export SDKMAN_NATIVE_VERSION0.4.6 # ... echo Getting available candidates... SDKMAN_CANDIDATES_CSV$(curl -s ${SDKMAN_SERVICE}/candidates/all) echo $SDKMAN_CANDIDATES_CSV ${SDKMAN_DIR}/var/candidates脚本访问服务https://api.sdkman.io/2/candidates/all将其返回值用于生成文件~/.sdkman/var/candidates 想法 考虑到sdkman官方服务部署在海外有时候访问不了我们这里可以通过其他手段将这三个文件提前下载下来基于nginx部署为本地服务并将服务地址指向本地服务这样后续安装的时候就不在受到海外服务卡顿带来的影响了。 下面是我基于官方脚本重新修改后的安装脚本内容如下 #!/bin/bash # # Copyright 2017 Marco Vermeulen # # 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. ## install:- channel: stable; cliVersion: 5.18.2; cliNativeVersion: 0.4.6; api: https://api.sdkman.io/2set -etrack_last_command() {last_command$current_commandcurrent_command$BASH_COMMAND } trap track_last_command DEBUGecho_failed_command() {local exit_code$?if [[ $exit_code ! 0 ]]; thenecho $last_command: command failed with exit code $exit_code.fi } trap echo_failed_command EXIT# Global variables export SDKMAN_SERVICEhttps://api.sdkman.io/2 export SDKMAN_VERSION5.18.2 export SDKMAN_NATIVE_VERSION0.4.6if [ -z $SDKMAN_DIR ]; thenSDKMAN_DIR$HOME/.sdkmanSDKMAN_DIR_RAW$HOME/.sdkman elseSDKMAN_DIR_RAW$SDKMAN_DIR fi export SDKMAN_DIR# Local variables#sdkman_download_dir~/Download/sdkman sdkman_download_dir$(pwd)sdkman_src_folder${SDKMAN_DIR}/src sdkman_libexec_folder${SDKMAN_DIR}/libexec sdkman_tmp_folder${SDKMAN_DIR}/tmp sdkman_ext_folder${SDKMAN_DIR}/ext sdkman_etc_folder${SDKMAN_DIR}/etc sdkman_var_folder${SDKMAN_DIR}/var sdkman_candidates_folder${SDKMAN_DIR}/candidates sdkman_config_file${sdkman_etc_folder}/config sdkman_platform_file${sdkman_var_folder}/platform sdkman_bash_profile${HOME}/.bash_profile sdkman_profile${HOME}/.profile sdkman_bashrc${HOME}/.bashrc sdkman_zshrc${ZDOTDIR:-${HOME}}/.zshrcsdkman_init_snippet$( cat EOF #THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!! export SDKMAN_DIR$SDKMAN_DIR_RAW [[ -s ${SDKMAN_DIR_RAW}/bin/sdkman-init.sh ]] source ${SDKMAN_DIR_RAW}/bin/sdkman-init.sh EOF )# OS specific support (must be true or false). cygwinfalse; darwinfalse; solarisfalse; freebsdfalse; case $(uname) inCYGWIN*)cygwintrue;;Darwin*)darwintrue;;SunOS*)solaristrue;;FreeBSD*)freebsdtrue esacecho echo -syyyyyyys: echo /yho: -yd. echo /yh/ m. echo .oho. hy . echo .sh/ :N -/o dyyo:. echo .yh: M- -/osysoym :hs -sys: hhyssssssssy echo .sh: N: ms/- yy.yh- -hy. .N-N. echo od/ N- -/oM- ddd sd: hNNm -N: echo :do .M. dMMM- ms. /d NMMs do echo .yy- :N mMMM. - -hy. /MMM: yh echo d :/oo/ -/osyh/ossssssdNMM .sh: yMMN /m. echo -dh- :ymNMMMMy -/shmNm-:N/-. .sN /N- NMMy .m/ echo oNs -hysosmMMMMydmNmds-.:ohm : sd :MMM/ yy echo .hN /d: -MMMmhs/-. .MMMh .ss- yy sMMN :N. echo :mN/ N/ o/- :MMMo MMMN- . ds mMMh do echo /NN/ N....--:/oooosooo:sMMM: hMMMM: my .m -MMM :N. echo /NMo -ooooo/:-.......:hNMN. NMMMd .MM/ -m: oMMN. hs echo -NMd :mm -MMMm- .s/ -MMm. /m- mMMd -N. echo mMM/ .- /MMh. -dMo -MMMy od. .MMMs..---yh echo MMM. sNo.sNMM :MMMM/ shMMMNmNm- echo mMMM- /--ohmMMM :MMMMm. hyymmmdddo echo MMMMh. -yy/yMMM/ :MMMMMy -sm:...-:-. echo dMMMMmo-...-:/osyhddddho. shdh. hMMM: :MmMMMM/ ./yy/ :sys/sh/ echo .dMMMMMMmdddddmmNMMMNNNNNMMMMMs sNdo- dMMM- -/yd/MMMMm-:sy. :hs- /N echo /ymNNNNNNNmmdys/::----/dMMm: m- mMMMohmo/. sMMMMdo- .om: sh echo .-----/. .-hh/ od. NMMNmds/ mmy: mMy :yy. echo /moyso//ossso:. .yy dy: .. :MMMN---/oys: echo /m: .-:::- /d MMMMMMMNh: echo MN/ -yh. hddhy. echo /MM .sh: echo :NMo -sh/ echo -NMs /yy: echo .NMy :sh. echo mMm ./yds- echo dMMMmyo:-..-:oymNy: echo NMMMMMMMMMMMMMMMMms: echo -shmNMMMNmdy: echo echo echo Now attempting installation... echo echo # Sanity checks#echo Looking for a previous installation of SDKMAN... #if [ -d $SDKMAN_DIR ]; then # echo SDKMAN found. # echo # echo # echo You already have SDKMAN installed. # echo SDKMAN was found at: # echo # echo ${SDKMAN_DIR} # echo # echo Please consider running the following if you need to upgrade. # echo # echo $ sdk selfupdate force # echo # echo # echo # exit 0 #fiecho Looking for unzip... if ! command -v unzip /dev/null; thenecho Not found.echo echo Please install unzip on your system using your favourite package manager.echo echo Restart after installing unzip.echo echo exit 1 fiecho Looking for zip... if ! command -v zip /dev/null; thenecho Not found.echo echo Please install zip on your system using your favourite package manager.echo echo Restart after installing zip.echo echo exit 1 fiecho Looking for curl... if ! command -v curl /dev/null; thenecho Not found.echo echo echo Please install curl on your system using your favourite package manager.echo echo Restart after installing curl.echo echo exit 1 fiif [[ $solaris true ]]; thenecho Looking for gsed...if [ -z $(which gsed) ]; thenecho Not found.echo echo echo Please install gsed on your solaris system.echo echo SDKMAN uses gsed extensively.echo echo Restart after installing gsed.echo echo exit 1fi elseecho Looking for sed...if [ -z $(command -v sed) ]; thenecho Not found.echo echo echo Please install sed on your system using your favourite package manager.echo echo Restart after installing sed.echo echo exit 1fi fiecho Installing SDKMAN scripts...# Create directory structureecho Create distribution directories... mkdir -p $sdkman_tmp_folder mkdir -p $sdkman_ext_folder mkdir -p $sdkman_etc_folder mkdir -p $sdkman_var_folder mkdir -p $sdkman_candidates_folderecho Getting available candidates... #SDKMAN_CANDIDATES_CSV$(curl -s ${SDKMAN_SERVICE}/candidates/all) #echo $SDKMAN_CANDIDATES_CSV ${SDKMAN_DIR}/var/candidatescat $sdkman_download_dir/candidates ${SDKMAN_DIR}/var/candidatesecho Prime platform file... # infer platform function infer_platform() {local kernellocal machinekernel$(uname -s)machine$(uname -m)case $kernel inLinux)case $machine ini686)echo linuxx32;;x86_64)echo linuxx64;;armv6l)echo linuxarm32hf;;armv7l)echo linuxarm32hf;;armv8l)echo linuxarm32hf;;aarch64)echo linuxarm64;;*)echo exotic;;esac;;Darwin)case $machine inx86_64)echo darwinx64;;arm64)echo darwinarm64;;*)echo darwinx64;;esac;;MSYS*|MINGW*)case $machine inx86_64)echo windowsx64;;*)echo exotic;;esac;;*)echo exoticesac }export SDKMAN_PLATFORM$(infer_platform)echo $SDKMAN_PLATFORM $sdkman_platform_fileecho Prime the config file... touch $sdkman_config_file echo sdkman_auto_answerfalse $sdkman_config_file if [ -z $ZSH_VERSION -a -z $BASH_VERSION ]; thenecho sdkman_auto_completefalse $sdkman_config_file elseecho sdkman_auto_completetrue $sdkman_config_file fi echo sdkman_auto_envfalse $sdkman_config_file echo sdkman_beta_channelfalse $sdkman_config_file echo sdkman_checksum_enabletrue $sdkman_config_file echo sdkman_colour_enabletrue $sdkman_config_file echo sdkman_curl_connect_timeout7 $sdkman_config_file echo sdkman_curl_max_time10 $sdkman_config_file echo sdkman_debug_modefalse $sdkman_config_file echo sdkman_insecure_sslfalse $sdkman_config_file echo sdkman_selfupdate_featuretrue $sdkman_config_file# script cli distribution echo Installing script cli archive... # fetch distribution sdkman_main_zip_file${sdkman_tmp_folder}/sdkman_main_${SDKMAN_VERSION}.zip echo * Downloading... #curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_filerm -rf $sdkman_main_zip_file cp $sdkman_download_dir/sdkman_main_*.zip $sdkman_main_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_main_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_main_zip_file$(cygpath -w $sdkman_main_zip_file) fiunzip -qo $sdkman_main_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents...rm -f $sdkman_src_folder/* cp -rf ${sdkman_tmp_folder}/sdkman_main_*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman_main_* #rm -rf $sdkman_zip_fileecho # native cli distribution if [[ $SDKMAN_PLATFORM ! exotic ]]; then echo Installing script cli archive... # fetch distribution sdkman_native_zip_file${sdkman_tmp_folder}/sdkman_native_${SDKMAN_NATIVE_VERSION}.zip echo * Downloading... #curl --fail --location --progress-bar ${SDKMAN_SERVICE}/broker/download/native/install/${SDKMAN_NATIVE_VERSION}/${SDKMAN_PLATFORM} $sdkman_zip_filerm -rf $sdkman_native_zip_file cp $sdkman_download_dir/sdkman_native_*.zip $sdkman_native_zip_file# check integrity echo * Checking archive integrity... ARCHIVE_OK$(unzip -qt $sdkman_native_zip_file | grep No errors detected in compressed data) if [[ -z $ARCHIVE_OK ]]; thenecho Downloaded zip archive corrupt. Are you connected to the internet?echo echo If problems persist, please ask for help on our Slack:echo * easy sign up: https://slack.sdkman.io/echo * report on channel: https://sdkman.slack.com/app_redirect?channeluser-issuesexit fi# extract archive echo * Extracting archive... if [[ $cygwin true ]]; thensdkman_tmp_folder$(cygpath -w $sdkman_tmp_folder)sdkman_native_zip_file$(cygpath -w $sdkman_native_zip_file) fi unzip -qo $sdkman_native_zip_file -d $sdkman_tmp_folder# copy in place echo * Copying archive contents... rm -f $sdkman_libexec_folder/* cp -rf ${sdkman_tmp_folder}/sdkman_native_*/* $SDKMAN_DIR# clean up echo * Cleaning up... rm -rf $sdkman_tmp_folder/sdkman_native_* #rm -rf $sdkman_native_zip_file echo fiecho Set version to $SDKMAN_VERSION ... echo $SDKMAN_VERSION ${SDKMAN_DIR}/var/versionecho Set native version to $SDKMAN_NATIVE_VERSION ... echo $SDKMAN_NATIVE_VERSION ${SDKMAN_DIR}/var/version_nativeif [[ $darwin true ]]; thentouch $sdkman_bash_profileecho Attempt update of login bash profile on OSX...if [[ -z $(grep sdkman-init.sh $sdkman_bash_profile) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_bash_profileecho Added sdkman init snippet to $sdkman_bash_profilefi elseecho Attempt update of interactive bash profile on regular UNIX...touch ${sdkman_bashrc}if [[ -z $(grep sdkman-init.sh $sdkman_bashrc) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_bashrcecho Added sdkman init snippet to $sdkman_bashrcfi fiecho Attempt update of zsh profile... touch $sdkman_zshrc if [[ -z $(grep sdkman-init.sh $sdkman_zshrc) ]]; thenecho -e \n$sdkman_init_snippet $sdkman_zshrcecho Updated existing ${sdkman_zshrc} fiecho -e \n\n\nAll done!\n\necho You are subscribed to the STABLE channel.echo echo Please open a new terminal, or run the following in the existing one: echo echo source \${SDKMAN_DIR}/bin/sdkman-init.sh\ echo echo Then issue the following command: echo echo sdk help echo echo Enjoy!!!完整的脚本及相关文件我已经放在码云代码仓库sdkman-localized中了需要的小伙伴可以前去下载。进入目录执行如下命令即可安装 cat sdkman.sh | bash
http://www.pierceye.com/news/710026/

相关文章:

  • wordpress 文章内seo代码优化工具
  • 做网站用的笔记本配置网络科技公司骗术
  • 在线建设网站江苏中南建设集团网站是多少
  • 中国建设银行官网站陕西西安网站建设域名怎么用
  • 佛山高端网站制作公司自己做的网站怎么发布到百度
  • 网站建设空间选择的重要性wordpress菲插件关键词
  • 基于wap的企业网站设计与实现洛阳霞光seo网络公司
  • 在家做的手工活哪里有网站网站开发与运营方向和企业管理方向
  • 厦门网站建设厦门南京宣传片公司有哪些
  • 专门做问卷的网站南宁做网站公司
  • 鹰潭做网站公司网站模板及素材
  • dw网站引导页怎么做wordpress 福利
  • PS网站设计网站每年都要备案吗
  • 建设通网站账号erp实施顾问
  • 变装小说 wordpress网站建设好怎么优化
  • 苏州网站建设制作开发公司江浦做网站
  • 网站开发哪一门语言更快网站设计方案模板
  • 阿里云做网站需要些什么条件个人博客网站设计模板
  • 更改网站模板内容我赢职场wordpress
  • h5模板下载有哪些网站南京高端网站制作公司
  • 户外旅游网站模板佛山网络优化推广公司
  • 海南住房和城乡建设网站技术支持 重庆网站
  • 网站图片展示代码怎样给响应式网站提速
  • 学校 网站建设 招标广而告之微信推广平台
  • 企业如何通过地方网站宣传网站中国建设银行招聘官网
  • 上海品牌网站建设公网站的开发与建设项目
  • 做网站的艰辛电子商务网站建设与维护概述
  • 织梦网站做关键词网站开发到上线的过程
  • 威海千淼网站建设北京知名广告公司有哪些
  • wordpress多站点可视化wordpress主题flarum