Mac 以SH脚本安装Arthas

SH脚本安装Aethas

curl -L https://alibaba.github.io/arthas/install.sh | sh

安装脚本说明

示例源文件:

#! /bin/bash

# temp file of as.sh
TEMP_ARTHAS_FILE="./as.sh.$$"

# target file of as.sh
TARGET_ARTHAS_FILE="./as.sh"

# update timeout(sec)
SO_TIMEOUT=60

# default downloading url
ARTHAS_FILE_URL="https://arthas.aliyun.com/as.sh"

# exit shell with err_code
# $1 : err_code
# $2 : err_msg
exit_on_err()
{
    [[ ! -z "${2}" ]] && echo "${2}" 1>&2
    exit ${1}
}

# check permission to download && install
[ ! -w ./ ] && exit_on_err 1 "permission denied, target directory ./ was not writable."

if [ $# -gt 1 ] && [ $1 = "--url" ]; then
  shift
  ARTHAS_FILE_URL=$1
  shift
fi

# download from aliyunos
echo "downloading... ${TEMP_ARTHAS_FILE}"
curl \
    -sLk \
    --connect-timeout ${SO_TIMEOUT} \
    $ARTHAS_FILE_URL \
    -o ${TEMP_ARTHAS_FILE} \
|| exit_on_err 1 "download failed!"

# write or overwrite local file
rm -rf as.sh
mv ${TEMP_ARTHAS_FILE} ${TARGET_ARTHAS_FILE}
chmod +x ${TARGET_ARTHAS_FILE}

# done
echo "Arthas install successed."

译文:

# 这是一个用于安装Arthas的bash脚本

## 定义变量
- `TEMP_ARTHAS_FILE`:临时下载文件路径,即`. ./as.sh.$$`
- `TARGET_ARTHAS_FILE`:目标Arthas文件路径,即`. ./as.sh`
- `SO_TIMEOUT`:网络请求超时时间(秒),默认为60秒
- `ARTHAS_FILE_URL`:默认下载地址,指向阿里云的Arthas下载链接

## 函数定义
- `exit_on_err`:根据错误代码和消息退出脚本。当发生错误时,输出错误消息并以指定错误码退出脚本。

## 检查权限
- 检测当前目录是否可写,不可写则显示错误信息并退出。

## 参数处理
- 如果参数列表中包含`--url`选项,则获取下一个参数作为下载URL,并从该URL下载Arthas。

## 下载Arthas
- 使用curl命令按照给定的超时设置从指定URL下载Arthas到临时文件。
- 如果下载失败,则调用`exit_on_err`函数并退出脚本。

## 移动并设置执行权限
- 删除已存在的旧版Arthas本地文件(如果存在)。
- 将临时下载的Arthas文件移动到目标位置。
- 设置目标文件为可执行权限。

## 安装完成提示
- 显示“Arthas install successed.”表示Arthas安装成功。

安装原理

如果已经在系统中下载了Arthas的安装脚本(如install.shinstall-local.sh),并以正确的方式执行了这个脚本(通常使用命令 sh install.sh 或赋予其可执行权限后直接运行),那么这个脚本将会自动完成一系列步骤,最终将Arthas安装到您的计算机上。

具体来说,安装过程可能包括但不限于以下步骤:

  • 从官方源或其他可信源下载Arthas的发布包。
  • 解压缩下载的文件。
  • 将Arthas相关的JAR文件移动到特定目录,比如${HOME}/.arthas/lib/版本号/下。
  • 可能还会配置环境变量,以便于全局访问Arthas命令行工具。
  • 安装完成后,您就可以通过相应的启动脚本(例如as.sh)来连接和诊断运行在本地机器上的Java应用程序了。

设置环境变量

为了能够在任何终端窗口中方便地使用Arthas,您需要将Arthas的启动脚本路径添加到系统的PATH环境变量中。在macOS Catalina及以后版本中,系统默认使用的是Zsh shell,因此需要编辑.zprofile.zshrc文件:

# 设置Arthas路径
export ARTHAS_HOME=/opt/arthas
# 将Arthas的bin目录添加到PATH变量中
export PATH=$PATH:$ARTHAS_HOME

刷新环境变量

source ~/.bash_profile

SH启动运行

打开终端任意位置输入as.sh

随便连接一个Java连接应用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/421470.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【AI Agent系列】【MetaGPT多智能体学习】5. 多智能体案例拆解 - 基于MetaGPT的智能体辩论(附完整代码)

本系列文章跟随《MetaGPT多智能体课程》(https://github.com/datawhalechina/hugging-multi-agent),深入理解并实践多智能体系统的开发。 本文为该课程的第四章(多智能体开发)的第三篇笔记。主要是对课程刚开始环境搭…

AI Word Helper (Chorme Extentions) AI单词助手(谷歌浏览器插件)

AI Word Helper (Chorme Extentions) AI单词助手(谷歌浏览器插件) 英文网站,划词查单词,还是看不懂?因为单词意思那么多,词性搞不清,上下文搞不清,出来的意思就没法用,G…

【Spring整合H2内嵌数据库】

目录 H2介绍整合引入依赖配置相关参数编写sql文件启动spring boot项目,登录控制台 jpa实践entityservicedao 《饮酒》.(陶渊明) 结庐在人境,而无车马喧。 问君何能尔,心远地自偏。 采菊东篱下,悠然见南山…

【模型复现】自制数据集上复现目标检测域自适应 SSDA-YOLO

【模型复现】自制数据集上复现目标检测域自适应 SSDA-YOLO 1. 环境安装2. 数据集制作2.1 数据准备2.2 数据结构 3. 模型训练3.1 数据文件配置3.2 训练超参数配置3.3 模型训练 4. 模型验证4.1 验证超参数配置4.2 模型验证 5. 模型推理5.1 推理超参数配置5.2 模型推理 6. 踩坑记录…

计算机网络-典型网络组网架构

前面基本网络知识已经能够满足中小企业的需要了,今天来看下一些基本网络组网架构。 首先网络是分层架构,从接入层到汇聚层再到核心层,然后接入运营商出口。内部包括有线网络、无线网络,出口一般可以使用路由器或者防火墙进行安全防…

Docker:开启访问端口 || IDEA开发工具快速部署到服务器

参考文档:Docker开启远程安全访问-腾讯云开发者社区-腾讯云 一、Linux服务器环境 1.1、安装Linux 1.2、安装docker 二、Linux服务器配置docker开放端口 2.1、首先进入docker配置文件打开 /usr/lib/systemd/system/docker.service 或运行以下命令 vi /usr…

智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人(机器人大模型与具身智能挑战赛)

智能咖啡厅助手:人形机器人 融合大模型,行为驱动的智能咖啡厅机器人(机器人大模型与具身智能挑战赛) “机器人大模型与具身智能挑战赛”的参赛作品。的目标是结合前沿的大模型技术和具身智能技术,开发能在模拟的咖啡厅场景中承担服务员角色并…

蓝桥杯:真题讲解3(C++版)附带解析

报纸页数 来自:2016年七届省赛大学C组真题(共8道题) 分析: --画出报纸长的样子,如果我们在上面多画一张报纸,那么就符合题意的5,6,11,12。 观察这张图:观察3&#xf…

React之数据绑定以及表单处理

一、表单元素 像<input>、<textarea>、<option>这样的表单元素不同于其他元素&#xff0c;因为他们可以通过用户交互发生变化。这些元素提供的界面使响应用户交互的表单数据处理更加容易 交互属性&#xff0c;用户对一下元素交互时通过onChange回调函数来监听…

阿尔卡特Adixen ADP/ADS 系列 2 干泵使用说明

阿尔卡特Adixen ADP/ADS 系列 2 干泵使用说明

JVM 第二部分-2(堆,方法区)

4.堆 堆 一个Java程序&#xff08;main方法&#xff09;对应一个jvm实例&#xff0c;一个jvm实例只有一个堆空间堆是jvm启动的时候就被创建&#xff0c;大小也确定了。大小可以用参数设置。堆是jvm管理的一块最大的内存空间 核心区域&#xff0c;是垃圾回收的重点区域堆可以位…

基于SSM的高校竞赛和考级查询系统(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的高校竞赛和考级查询系统&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Sp…

带着问题阅读源码——Spring MVC是如何将url注册到RequestMappingHandlerMapping?

背景 在 Spring MVC 中&#xff0c;DispatcherServlet 是前端控制器&#xff08;front controller&#xff09;&#xff0c;它负责接收所有的 HTTP 请求并将它们映射到相应的处理器&#xff08;handler&#xff09;。为了实现这一点&#xff0c;Spring MVC 使用了适配器模式将…

Atcoder ABC342 E - Last Train

Last Train&#xff08;最后一班火车&#xff09; 时间限制&#xff1a;2s 内存限制&#xff1a;1024MB 【原题地址】 所有图片源自Atcoder&#xff0c;题目译文源自脚本Atcoder Better! 点击此处跳转至原题 【问题描述】 【输入格式】 【输出格式】 【样例1】 【样例输入…

<网络安全>《61 微课堂<第1课 南北向流量是什么?>》

1 形象化解释 在网络安全中&#xff0c;经常听到南北向流量这个词。那究竟是什么意思呢&#xff1f; 这里的南北&#xff0c;就是地图上的东西南北&#xff0c;是方向。我们在画网络架构图时&#xff0c;往往是由上到下依次是web层、应用层、数据层&#xff0c;流量从web层到…

数据结构——跳表

简单介绍跳表 跳表&#xff08;Skip List&#xff09;是一种可以进行对数级别查找的数据结构&#xff0c;它通过在数据中构建多级索引来提高查询效率。跳表是一种基于链表的随机化数据结构&#xff0c;其本质是由多个链表组成&#xff0c;每个链表中的元素都是原始链表中的元素…

图神经网络导论 - 刘知远

一、神经网络基础 近年来&#xff0c;机器学习领域的发展迅速&#xff0c;主要表现在多种神经网络架构的出现。尽管不同的神经网络架构相差甚远&#xff0c;但现有的神经网络架构可以分为几个类别&#xff1a; 卷积神经网路是前馈神经网路的特殊形式&#xff0c;FNN通常是全…

RISC-V特权架构 - 中断与异常概述

RISC-V特权架构 - 中断与异常概述 1 中断概述2 异常概述3 广义上的异常3.1 同步异常3.2 异步异常3.3 常见同步异常和异步异常 本文属于《 RISC-V指令集基础系列教程》之一&#xff0c;欢迎查看其它文章。 1 中断概述 中断&#xff08;Interrupt&#xff09;机制&#xff0c;即…

java实现图片转pdf,并通过流的方式进行下载(前后端分离)

首先需要导入相关依赖&#xff0c;由于具体依赖本人也不是记得很清楚了&#xff0c;所以简短的说一下。 iText&#xff1a;PDF 操作库&#xff0c;用于创建和操作 PDF 文件。可通过 Maven 或 Gradle 引入 iText 依赖。 MultipartFile&#xff1a;Spring 框架中处理文件上传的类…

MyBatis 学习(四)之 SQL 映射文件

目录 1 SQL 映射文件介绍 2 select 元素 3 insert 元素 4 update 和 delete 元素 5 sql 元素 6 parameterType 元素 7 resultType 元素 8 resultMap 元素&#xff08;重要&#xff09; 9 参考文档 1 SQL 映射文件介绍 映射器是 MyBatis 中最复杂并且是最重要的…