执行./start.sh restart 时报错 把输出追加到nohup.out
时间: 2024-02-21 18:00:47 浏览: 111
如果执行 ./start.sh restart 时报错,可以尝试将输出追加到 nohup.out 文件中,以便更好地查看错误信息。具体操作为:
1. 在终端中输入以下命令,执行 ./start.sh restart:
```
./start.sh restart
```
2. 如果出现错误信息,可以将输出追加到 nohup.out 文件中,命令如下:
```
./start.sh restart >> nohup.out 2>&1 &
```
这个命令中,">>" 表示追加输出,"2>&1" 表示将标准错误重定向到标准输出,"&" 表示将命令放到后台执行。
3. 执行完命令后,可以使用以下命令查看 nohup.out 文件的内容:
```
tail -f nohup.out
```
这个命令可以实时查看文件的最后几行内容,以便快速定位错误信息。
相关问题
#!/bin/bash # author xtc #APP_NAME=clic-reinsurance-0.0.1-SNAPSHOT #JAR_PATH=${pwd } #echo "jar path ~~ ${JAR_PATH}/ " #使用说明,用来提示输入参数 usage() { echo -e "\033[0;31m Usage: sh 脚本名.sh [start|stop|restart|status] \033[0m" exit 1 } #检查程序是否在运行 is_exist(){ pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' ` #如果不存在返回1,存在返回0 if [ -z "${pid}" ]; then return 1 else return 0 fi } #启动方法 start(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is already running. pid=${pid} ." else nohup ${JAVA_HOME}/bin/java -jar ${APP_NAME} > ${JAR_PATH}/catalina.out 2>&1 & echo "nohup ${JAVA_HOME}/bin/java -jar ${APP_NAME} > ${JAR_PATH}/catalina.out 2>&1 &" echo -e " ${APP_NAME} start success" fi } #停止方法 stop(){ is_exist if [ $? -eq "0" ]; then kill -9 $pid else echo "${APP_NAME} is not running" fi } #输出运行状态 status(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is running. Pid is ${pid}" else echo "${APP_NAME} is NOT running." fi } #重启 restart(){ stop start } JAR_PATH=$(cd $(dirname $0); pwd) for file in `ls ${JAR_PATH}/*.jar` do APP_NAME=${file} echo "$APP_NAME" done if [ ! -n "$APP_NAME" ]; then echo " jar is not exists " exit fi #根据输入参数,选择执行对应方法,不输入则执行使用说明 case "$1" in "start") start ;; "stop") stop ;; "status") status ;; "restart") restart ;; *) usage ;; esac
这是一个Shell脚本,用于启动、停止、重启或查看应用程序的运行状态。脚本通过输入参数来选择执行相应的操作,如果没有输入参数,则会输出使用说明。脚本中定义了几个函数,包括:
- usage:用于提示输入参数的使用说明。
- is_exist:用于检查程序是否在运行。
- start:用于启动程序。
- stop:用于停止程序。
- status:用于输出程序的运行状态。
- restart:用于重启程序。
脚本首先获取当前目录下的所有jar文件,然后根据输入参数选择执行相应的操作。如果输入的是start,则会检查程序是否已经在运行,如果没有运行,则会启动程序。如果输入的是stop,则会停止程序。如果输入的是status,则会输出程序的运行状态。如果输入的是restart,则会先停止程序,然后再启动程序。
shell编写jenkins.war管理脚本
### 回答1:
可以使用 shell 脚本来管理 Jenkins.war 文件。
具体来说,可以使用以下步骤编写脚本:
1. 下载 Jenkins.war 文件。
2. 使用 Java 命令运行 Jenkins.war 文件,启动 Jenkins 服务。
3. 使用 curl 或 wget 命令检查 Jenkins 的运行状态。
4. 使用像 ps、kill 等命令来管理 Jenkins 进程。
5. 使用命令来停止和重启 Jenkins。
请注意: 你需要在你的系统上安装Java runtime environment
以下是一个简单的示例脚本:
```
#!/bin/bash
# Start Jenkins
nohup java -jar jenkins.war > jenkins.log 2>&1 &
# Check the status of Jenkins
curl http://localhost:8080/login
# Stop Jenkins
pkill -f jenkins.war
```
### 回答2:
Jenkins是一个流行的开源CI/CD(持续集成/持续交付)工具,而shell是一种常用的脚本编程语言。通过编写shell脚本,可以方便地管理Jenkins.war文件。
首先,要下载最新的Jenkins.war文件,可以在Jenkins的官方网站上找到最新版本的下载链接。然后,可以使用wget或curl命令在shell脚本中下载该文件,并重命名为jenkins.war。
接下来,通过编写shell脚本,可以实现对Jenkins的启动、停止和重启等操作。可以使用java命令来启动Jenkins,例如:
```
java -jar jenkins.war
```
这样就可以在shell脚本中执行该命令来启动Jenkins。同样,可以使用kill命令来停止Jenkins进程,例如:
```
kill `pgrep -f jenkins.war`
```
这样就可以在shell脚本中执行该命令来停止Jenkins。
另外,还可以通过编写shell脚本来实现Jenkins的备份和恢复。可以使用cp命令来备份jenkins.war文件,例如:
```
cp jenkins.war jenkins_backup.war
```
这样就可以在shell脚本中执行该命令来备份Jenkins文件。同样,可以使用cp命令来恢复jenkins.war文件,例如:
```
cp jenkins_backup.war jenkins.war
```
这样就可以在shell脚本中执行该命令来恢复Jenkins文件。
总之,通过编写shell脚本,可以方便地管理Jenkins.war文件,包括下载、启动、停止、重启、备份和恢复等操作。这样可以简化对Jenkins的管理,并提高工作效率。
### 回答3:
Jenkins是一个自动化工具,它可以通过编写shell脚本来管理jenkins.war文件。
首先,我们需要创建一个新的shell脚本文件,例如jenkins.sh。在该脚本中,我们可以使用以下命令来管理jenkins.war文件:
1. 启动Jenkins:
通过使用java命令运行jenkins.war文件,可以启动Jenkins服务器。
```shell
java -jar jenkins.war
```
2. 停止Jenkins:
Jenkins可以通过发送POST请求到服务器上的特定端口来关闭。我们可以使用curl命令来完成这个任务。
```shell
curl -X POST http://localhost:8080/jenkins/safeExit
```
3. 重启Jenkins:
与停止相似,我们可以使用curl命令发送POST请求来重新启动Jenkins。
```shell
curl -X POST http://localhost:8080/jenkins/restart
```
除了上述基本功能外,还可以使用其他shell命令来进行更多操作,例如获取Jenkins服务的状态、执行Jenkins作业等。 一个简单的例子可以是:
```shell
#!/bin/bash
function start_jenkins() {
java -jar jenkins.war &
}
function stop_jenkins() {
curl -X POST http://localhost:8080/jenkins/safeExit
}
function restart_jenkins() {
curl -X POST http://localhost:8080/jenkins/restart
}
function status_jenkins() {
service_status=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:8080/jenkins)
if [ $service_status == "200" ]; then
echo "Jenkins is running."
else
echo "Jenkins is not running."
fi
}
# 根据传入参数执行相应操作
case "$1" in
start)
start_jenkins
;;
stop)
stop_jenkins
;;
restart)
restart_jenkins
;;
status)
status_jenkins
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
esac
```
该脚本通过解析用户传入的参数,执行相应的操作。例如,如果我们在命令行中执行"./jenkins.sh start",则脚本将启动Jenkins服务器。
通过编写这样的shell脚本可以方便地管理jenkins.war文件,以及对Jenkins服务器进行操作。
阅读全文