`
sxfreesky
  • 浏览: 8400 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

catalina.sh的一个搞笑的问题

 
阅读更多
# 执行$CATALINA_HOME/BIN/setenv.sh来设置环境变量
# [ -r filename ] 是判断是否文件存在且可读

CATALINA_HOME=`cd "$PRGDIR/.." ; pwd`
if [ -r "$CATALINA_HOME"/bin/setenv.sh ]; then
. "$CATALINA_HOME"/bin/setenv.sh

看catalina.sh的这一行,在判断文件是否存在时是通过pwd来获得相对路径的,但我们知道,pwd实际上获取的
是当前命令行所在的路径,于是问题出来了,当我们需要执行某个需要路径参数驱动的方法,而执行命令时位置又不是
项目所在时,pwd就成为了项目的畔脚石了。这个问题是我在现在的项目中的一个同事遇到的,当时他得到的路径是在
一个日志文件夹下,后来还系我看了catalina.sh的文件猜的..搞笑....记下这个问题,权作给我的博客加点内容了。

解决方案我只想了个简单的方法,就是把startup.sh包装一下,用另一个新的sh文件执行startup.sh,不过需要在
startup.sh前面加上特定的路径,这样每次执行时执行新的sh文件就行了,而且没有路径限制,因为在新的sh文件
里面已经写死了startup.sh的执行路径,同时也不会对其他程序造成影响。
分享到:
评论

相关推荐

    catalina.sh

    在Java Web开发领域,Tomcat作为一款广泛应用的开源Servlet容器,其启动、管理和监控离不开一个核心脚本——`catalina.sh`。这个脚本是Tomcat服务器的启动入口,负责调用Java虚拟机(JVM)并执行相关的配置和初始化...

    tomcat 下catalina.out 日志乱码问题处理

    针对这个问题,给出的解决方案是在Tomcat的启动脚本`bin/catalina.sh`中添加以下配置: ```bash JAVA_OPTS="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8" ``` 这里的`JAVA_OPTS`环境变量用于设置Java虚拟机...

    Linux下tomcat日志catalina.out按天(/周)分割

    首先,我们可以编写一个shell脚本来实现这个功能。这个脚本通常会包含以下几个步骤: 1. **设置变量**:定义日志文件路径、备份目录、日期格式等。 2. **获取当前日期**:使用`date`命令获取当前日期,以确定新日志...

    catalina.out 日志分割

    #### 一、问题背景与重要性 在IT运维工作中,日志文件对于诊断系统错误、监控应用运行状态以及进行性能优化等方面发挥着至关重要的作用。然而,随着系统运行时间的增长,日志文件的大小会逐渐增加,如果不加以控制...

    TOMCAT在LINUX下catalina.out文件分割

    例如,在`/etc/cron.d/tomcat-logrotate`中添加一行`0 0 * * * /usr/local/sbin/cronolog /path/to/tomcat/logs/catalina.%Y%m%d.out /path/to/tomcat/logs/catalina.out`,这将在每天0点创建一个格式为`catalina....

    tomcat下用Log4j 按文件大小,生成catalina.out日志文件

    在Java Web开发中,Tomcat是一个广泛使用的应用服务器,它负责运行我们的Servlet和JSP应用程序。日志系统是任何应用程序的重要组成部分,它帮助开发者在调试、监控和问题排查时收集必要的信息。Log4j是Apache的一个...

    在tomcat的catalina.sh文件中添加了jconsole检测内存配置

    综上所述,通过在`catalina.sh`中配置JConsole,我们可以对Tomcat进行深度监控,及时发现并解决性能问题,这对于优化Java应用的运行效率和稳定性至关重要。同时,了解如何配置和使用JConsole也是Java开发者和运维...

    使用cronolog工具切分Tomcat的catalina.out日志文件

    因此,使用cronolog来切分`catalina.out`是一个有效的方法。 首先,你需要在你的Linux系统中安装cronolog。大多数Linux发行版都提供了cronolog的包,可以通过包管理器(如`apt-get`或`yum`)进行安装。安装完成后,...

    cronolog-catalina.out

    使用 cronolog 配合 `catalina.sh` 可以实现日志的自动化管理,例如每天或每小时创建一个新的日志文件,以便于分析和存储。cronolog 的工作原理是接收来自标准输入的数据,并根据预定义的时间格式将这些数据重定向到...

    catalina.out日志切分.docx

    1. **修改日志路径**:在`catalina.sh`文件中找到关于`CATALINA_OUT`变量的定义,并将其由原来的静态路径修改为带有日期格式的动态路径。 - 将 ```bash if [ -z "$CATALINA_OUT" ]; then CATALINA_OUT="$...

    linux下切分tomcat的Catalina.out日志

    解决这个问题的一种有效方法是通过定期切分`catalina.out`日志文件。这样做不仅可以避免单个日志文件变得过大,还可以确保日志文件的可读性和管理性。以下是一种利用cronolog工具实现自动切分`catalina.out`的方法:...

    解决Tomcat 中catalina.out持续累加问题

    因此,管理和控制catalina.out文件大小成为了系统管理员需要关注的一个问题。 本篇知识内容将详细介绍如何解决Tomcat中catalina.out文件持续累加导致磁盘空间满的问题。首先,我们需要了解catalina.out文件的作用...

    log4j切割catalina为日滚型的

    `log4j`是一个广泛使用的Java日志框架,它提供了灵活的日志记录功能,包括日志级别控制、日志格式化以及日志输出目标的选择。而`catalina.out`文件是Apache Tomcat服务器的标准输出和错误输出的集合,包含了服务器...

    setenv.sh for tomcat

    标签中的“源码”可能指的是`setenv.sh`本身是一个可编辑的文本文件,通常包含Shell脚本代码。而“工具”则暗示`setenv.sh`是一个用于调整和优化Tomcat运行环境的实用工具。 至于文件列表中的"ok.war",这是Web应用...

    tomcat8.0源码+catalina-home.rar

    当一个HTTP请求到达,Catalina会根据配置解析请求,然后通过容器(如StandardHost、StandardContext等)层层传递,直到找到对应的Servlet进行处理。在这个过程中,Catalina会处理URL映射、会话管理、错误处理等关键...

    treeNMS1.7.1缺失文件

    在进行系统维护、更新或故障排查时,`shutdown.sh`是一个必不可少的工具。 4. **startup.sh**: `startup.sh`与`shutdown.sh`相对,用于启动Tomcat服务器。它调用`catalina.sh`来启动服务器,通常是在系统初始化或...

    Tomcat日志分割.docx

    总结,通过使用`cronolog`工具,我们可以有效地对Tomcat的`catalina.out`日志进行按日期分割,避免了单个日志文件过大带来的问题,并且便于按日期查询和分析日志。这是一个简单而实用的方法,对于维护和优化Tomcat...

    tomcat日志过大问题

    `cronolog`是一个强大的日志旋转工具,可以按照指定的时间间隔自动分割日志文件,这对于管理和维护大型日志文件特别有用。 1. **准备工作**: - **下载cronolog**: 可以从官方网站或源代码仓库下载最新版本的`...

    Linux中tomcat日志切割

    `logrotate`是一个自动管理日志文件的工具,它可以定期重命名(即切割)日志文件,并根据需要压缩、删除旧文件。下面我们将详细讲解如何使用这两种方法来实现Tomcat日志的切割。 1. 使用`logrotate` 首先,我们...

Global site tag (gtag.js) - Google Analytics