精华内容
下载资源
问答
  • linux下写的启动和关闭jar包项目sh脚本
    千次阅读
    2019-10-16 13:54:28

    1.创建start.sh

    #!/bin/sh
    nohup java -jar 文件.jar &
    echo $!> /根目录一直到文件/obj.pid

    2.创建stop.sh

    #!/bin/sh
    PID=$(cat /根目录一直到/obj.pid)
    kill -9 $PID

    3.创建obj.pid文件

    4.以上三个文件和jar包放在一个目录下面

    更多相关内容
  • linux下启动停止命令脚本dc.sh
  • linux通用版本jar启动脚本傻瓜式启动 sh run.sh start 启动 sh run.sh stop 停止 nohup java -jar XXX.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行 当用 nohup 命令执行作业时,...
  • spring boot、springcloud项目一般为jar包形式运行,每次启动及关闭输命令很不爽,切且vm调优比较麻烦,编写shell脚本,将JVM调优参数及日常命令进行封装,操作简单,还不易出错,妙哉妙哉,此脚本已在我司正式使用...
  • linux双击执行sh脚本

    千次阅读 2021-03-31 19:07:07
    linux双击执行sh脚本 文章目录linux双击执行sh脚本1、在桌面上新建一个Auto.sh脚本文件2、打开终端在桌面目录下执行以下命令进行权限设置:3、设置Terminal启动命令4、双击启动程序开机自启程序1、在home搜索:start...

    linux双击执行sh脚本


    链接1

    链接2

    程序运行所需环境:
    运行系统:Ubuntu16.04
    
    运行环境:ROS Kinetic
    
    程序语言:Ubuntu1604自带的Python2.7以及sh脚本文件
    

    双击启动程序

    1、在桌面上新建一个Auto.sh脚本文件

    1、文件里面内容如下:

    
    #! /bin/bash 
    # 开头这句话必不可少
    source /opt/ros/kinetic/setup.bash    # 启动ros环境
    gnome-terminal -x bash -c "roscore" & # 启动roscore命令
    sleep 2
    gnome-terminal -x bash -c "rviz" &    # 启动rviz
    点击保存关闭。
    

    2、打开终端在桌面目录下执行以下命令进行权限设置:

    sudo chmod +x Auto.sh
    二、添加一个Terminal到桌面
    在home中搜索Terminal,找到后拖到桌面上,如下图所示

    img

    3、设置Terminal启动命令

    在桌面的Terminal图标上右键菜单里选择Properties,然后在Command那一栏中填入Auto.sh文件的路径,如下图所示:

    (获取路径方法:可以直接在Auto.sh文件上右键点击copy,然后在Command里面粘贴即可。)

    img

    然后点击关闭按钮进行关闭。(也可以顺便更换图标,点击左上角那个图标,选择需要更换的图片即可,也可以重命名图标名称。

    可以使用vim查看xxx.desktop文件,修改里面的属性
    

    内容如下

    [Desktop Entry]
    Name=Terminal  // 名称
    Comment=Use the command line
    Keywords=shell;prompt;command;commandline;cmd;
    TryExec=gnome-terminal
    Exec=/home/zhongsy/visual_script/test_visual.sh   // 命令
    Icon=/home/zhongsy/视觉调试.jpg     // 图标
    Type=Application
    X-GNOME-DocPath=gnome-terminal/index.html
    X-GNOME-Bugzilla-Bugzilla=GNOME
    X-GNOME-Bugzilla-Product=gnome-terminal
    X-GNOME-Bugzilla-Component=BugBuddyBugs
    X-GNOME-Bugzilla-Version=3.18.3
    Categories=GNOME;GTK;System;TerminalEmulator;
    StartupNotify=true
    X-GNOME-SingleWindow=false
    OnlyShowIn=GNOME;Unity;
    Actions=New
    X-Ubuntu-Gettext-Domain=gnome-terminal
    
    Name[en_US]=visul_debug
    

    4、双击启动程序

    双击刚刚操作完的图标,即可启动基于ROS的rviz程序,如下图所示:

    img

    如果出现如上图所示的界面,说明运行成功了。
    ————————————————

    开机自启程序

    1、在home搜索:start,如下图所示:

    img

    打开之后如下图所示:

    img

    2、点击Add打开添加窗口,在Command里面添加Auto.sh文件的路径,如下图所示:

    (获取路径方法:可以直接在Auto.sh文件上右键点击copy,然后在Command里面粘贴即可。)

    img

    添加完毕的窗口如下图所示:

    点击close即可。

    3、这时候可以重启电脑即可看到,rviz程序也随机启动了。

    gnome-terminal用法

    [基本用法]

    gnome-terminal命令用于打开一个新的终端,直接在命令行

    $ gnome-terminal
    

    就可以打开一个新的终端,有一些常用参数:

    打开后自动最大化

    $ gnome-terminal --maximize
    

    打开后全屏

    $ gnome-terminal --full-screen
    

    设置标题

    $ gnome-terminal --title="new title"
    

    打开多个终端,多个tab

    $ gnome-terminal --window --window #打开两个
    
    $ gnome-terminal --window --tab --window --tab --tab #打开两个,第一个两个tab,第二个3个tab
    

    设置打开的位置和大小(宽度x高度+左侧偏移量+上方偏移量)

    $ gnome-terminal --geometry=80x25+10+10
    

    [启动后自动执行命令]

    有两个参数可以实现这个功能,-e和-x,这两个区别在于

    • -e 可以出现多次,如果在所有–window前面,表示对所有window和tab起作用,如果在–window或者–tab后面,表示只针对这个tab执行,要注意-e后面只能有一个参数,也就是说如果有空格,需要用引号,具体见后例
    • -x 只能出现一次,在-x后面的所有内容,均认为是要执行的命令,所以可以出现空格,这些命令是针对所有tab都执行的

    比如:

    $ gnome-terminal -e ls
    
    $ gnome-terminal -x ls
    

    这两个的执行结果都一样,就是新的终端闪一下就没了,有几种办法:

    • 一种是修改terminal的配置,在terminal点右键,选择Profiles->Profile Preferences,然后找到Title and Command,里面有一项When command exits,后面选择为Hold the terminal open,然后就可以了

    • 第二种是把结果重定向给less,这样less执行完之前,是不会退出的

    $ gnome-terminal -x ls|less
    
    • 第三种是在bash里面再启用一个bash
    $ gnome-terminal -x bash -c "ls; exec bash"
    
    $ gnome-terminal -e 'bash -c "ls; exec bash"'
    

    注意最后一个命令是exec bash,如果直接写bash也行,相当于开了一个子shell,这样有个**缺点,就是直接按关闭按钮的话,会提示还有程序在运行,**需要注意的是,这里执行的命令,在调用.bashrc之前,所有.bashrc的所有配置都无效,如果需要用到.bashrc里面的内容,有个变通的办法,在.bashrc最后加上一句

    --------------------.bashrc--------------------
    
    其他内容
    
    #最后加上这句
    evel "$RUN_AFTER_BASHRC"
    -----------------------------------------------
    

    然后在写命令的时候,修改RUN_AFTER_BASHRC这个变量,就可以实现让.bashrc调用这个命令

    $ gnome-terminal -x bash -c 'export RUN_AFTER_BASHRC="ls --help"; exec bash'
    

    或者下面的写法比较简单(注意对所有tab生效),也不会自动关闭了

    $ RUN_AFTER_BASHRC="ls" gnome-terminal
    

    [打开一个terminal并预先输好一段文字]

    这个需求比较偏门,解决方法不错,就是利用expect这个工具,最后的程序如下

    ----------------------------myprompt-----------------------
    #!/usr/bin/expect
    #trap sigwinch and pass it to the child we spawned
    #this allows the gnome-terminal window to be resized
    trap {
      set rows [stty rows]
        set cols [stty columns]
        stty rows $rows columns $cols < $spawn_out(slave,name)
    } WINCH
    set arg1 [lindex $argv 0]
    # Get a Bash shell
    spawn -noecho bash
    # Wait for a prompt
    expect "$ "
    # Type something
    send $arg1
    # Hand over control to the user
    interact
    exit
    ------------------------------------------------
    
    

    调用方法(注意文件的路径要写全):

    gnome-terminal -e "./myprompt \"my text to be posted\""
    

    [添加一个”用vim打开“的脚本]

    研究这个gnome-terminal的目的,是为了写一个脚本,实现右键选一个文件,然后可以用vim打开,最后的脚本文件如下(两种方法都写了)

    -------------------~/.gnome2/nautilus-scripts/OpenWithVIM----------------------
    
    
    
    #!/bin/bash
    
    
    
    gnome-terminal -x bash -c 'export RUN_AFTER_BASHRC="vim $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"; exec bash'
    
    
    
    #RUN_AFTER_BASHRC="vim $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" gnome-terminal
    
    
    
    -------------------------------------------------------------------------------
    

    不过选中多个文件还不行,因为也没这个需要,所以暂时就这样了

    展开全文
  • 启动脚本 java -jar jar包名称 --spring.config.location=/外部配置文件路径...关闭脚本 port=端口号 pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }'); if [ -n "$pid" ]; then ki

    启动脚本

    java -jar jar包名称 --spring.config.location=/外部配置文件路径/配置文件名称  > catalina.out 2>&1 &
    echo "开始启动服务-----------"
    

    关闭脚本

    port=端口号
    pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');
    
    if [  -n  "$pid"  ];  then
        kill  -9  $pid;
    fi
    echo "开始关闭服务"
    
    

    以.sh文件格式保存

    展开全文
  • 定时启动,* 8,18 * * * /test/test.sh 这里设置每天的上午8点到下午6点之间每分钟执行一次脚本 .../test/test.sh 是shell脚本的绝对路径 设置好后重启crontab服务,命令如下: service crond restart 设置完成
  • linux 关闭进程脚本

    千次阅读 2019-04-25 17:00:35
    linux 关闭进程脚本说明代码 说明 在写完 start.sh 脚本的时候, 很经常的 需要重启服务器,就需要关闭服务器再启动, 一般的就是 按照 命令ps -ef |grep java … 去找到对应的进程号 在kill -9 ${proid}, 很烦… ...

    linux 关闭进程脚本

    说明

    在写完 start.sh 脚本的时候, 很经常的 需要重启服务器,就需要关闭服务器再启动, 一般的就是 按照 命令ps -ef |grep java … 去找到对应的进程号 在kill -9 ${proid}, 很烦…
    下面的代码 就实现了 自己写一个shutdown 关闭进程
    具体的逻辑为

    1. ps -ef |grep ${关键字} 找出自己程序可以唯一找到的关键字
    2. 找到后检索出进程号kill -9 ¥{proid}

    代码

    #1. 定义关键字查询进程信息
    findstr=`echo "jar test-gradle-jar-1.0-SNAPSHOT.jar"`
    #2. 查询进程信息保存于proids 
    
    ps -ef|grep '${findstr}' |grep -v 'grep'|awk '{print $2}'
    i=0
    for proid in `ps -ef|grep "${findstr}"|grep -v 'grep' |awk '{print $2}'`
    do 
     
        proids[$i]=$proid
        let i=$i+1
    done
    
    #3. 判断proids的数据 
    if [ ${#proids[*]} -eq 0 ]; 
    then
        echo "not find proid"
    elif [ ${#proids[*]} -eq 1 ]; 
    then
        kill -9 ${proids[0]}
        echo "proid[${proids[0]}] was killed"
    else
        for proid in ${proids[@]}
        do
            if [ $proidstr ];
            then
                proidstr="$proidstr,$proid" 
            else
                proidstr="$proid"
            fi
            
        done 
        echo "存在多条进程[${proidstr}], 请查询后再删除"
    fi
     
    
    
    
    展开全文
  • 1.当写好一个.sh脚本文件后,给他赋予执行权限后,双击的时候,默认是以文本编辑器打开的,无法运行该脚本文件。 2.打开终端。 3.输入如下命令,需要联网: sudo apt install dconf-editor 4.安装完成之后,...
  • springboot项目关闭脚本

    2020-05-06 10:23:01
    springboot项目关闭脚本,将文件上传linux服务器,修改需要关闭的jar文件,赋予执行权限,通过./***.sh启动
  • 这个简单的脚本Linux X11 系统上关闭屏幕 使用它的最佳方法是将其复制到您的主文件夹 打开终端并运行chmod a+x screenoff.sh 如果你想使它成为一个广泛的系统命令运行sudo cp screenoff.sh /usr/bin/ 然后为其...
  • 如果我直接运行./a.sh,首先你会查找脚本第一行是否指定了解释器,如果没指定,那么就用当前系统默认的shell(大多数linux默认是bash),如果指定了解释器,那么就将该脚本交给指定的解释器.比如a.run文件内容是这个:#...
  • 虽然写起动shell的频率非常不高。。。但是每次要写都要对付一大...#该脚本Linux下启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。 # #Author: tudaxia.
  • 一、添加sheel脚本1、首先创建一个执行程序:vim a.sh2、编辑: #!/bin/bashpython3 python.py>> test2.log 2>&13、添加权限:chmod +x ./a.sh4、查看执行结果: ./a.sh二、添加定时任务安装:apt-...
  • 当耗时过长的情况下,我们使用 ssh 远程登录到 linux 服务器上容易造成超时自动断开连接,当用户注销时,终端会收到 hup(hangup)信号从而关闭其所有子进程,会导致正在执行中的 python 脚本被中断,为了解决这一问题...
  • 用于shell脚本(符合Posix的)getoptions的优雅选项解析器用于shell脚本sh,bash和所有POSIX shell)getoptions的优雅选项解析器是一种新的选项解析器(生成器),它是用POSIX兼容的shell脚本编写的,于2020年8月...
  • 修改jar包名称,修改脚本权限为777。 使用方法: ./server.sh start(stop/restart)
  • 我们可以更加自动化,新建一个shut.sh脚本,写入以下内容即可。 #!/bin/bash tmp=`ps -ef | grep YOUR_NAME | grep -v grep | awk '{print $2}'` echo ${tmp} for id in $tmp do kill -9 $id echo "killed $id
  • 原因是 windows 下的换行符是 \r\n,而 linux 下的换行符是 \n 1、第一种解决方案: 首先 安装 dos2unix yum install dos2unix -y 第一步 :chmod +x startBatch.sh 第二步 :你只要输入dos2unix startBatch.sh...
  • linux开机自动执行.sh脚本

    万次阅读 2018-05-10 23:36:13
    编写开机自动执行的脚本auto.sh #!/bin/sh #chkconfig: 2345 20 80 #description:Server reboot.Execute auto.sh #client post port 80 redirect 9527 #sudo iptables -A PREROUTING -t nat -i eth0 -p tcp —...
  • 大家都知道在Hadoop集群开启/关闭Zookeeper集群的时候,需要到不同的节点ZK的bin目录下执行对应的启动/关闭脚本,十分的麻烦。所以就有了以下脚本的产生~   一键开启Zookeeper vim /export/servers/zookeeper-3.4.5...
  • Linux中执行Shell脚本的4种方法的总结,即在Linux中运行Shell脚本的4种方法:方法1: 切换到Shell脚本所在的目录(在这种情况下centos 执行shell脚本,称为工作目录)并执行Shell脚本:复制代码,代码如下:cd / data / ...
  • 现在有一SpringBoot项目,该项目制作成的jar包名为: springboot-learning-0.0.1-SNAPSHOT.jar.jar . 将该jar包部署到Linux平台的 /app/...其启动 start.sh 脚本命令如下: #!/bin/sh rm -f tpid nohup java -Xms...
  • Linux下启动和停止jar包运行的脚本
  • 终止所有用户会话下面的shell脚本将通过获取用户会话的tty值来终止所有用户的活动会话,并使用pkill命令将其终止:[root@localhost ~]# vim kill-user-sessions.sh#!/bin/bashusession=$(w | awk '{if (NR!=1) {...
  • linux 启动服务,关闭服务脚本

    千次阅读 2016-12-14 11:08:17
    start.sh#!/bin/sh sleep 2 kill -s 9 `ps -ef | grep /home/crmhdcc/web/huacrm/apache-tomcat-7.0.64/ | grep -v grep | awk '{print $2}'` rm -rf /home/crmhdcc/web/huacrm/apache-tomcat-7.0.64/work/Catalina ...
  • 如果想要在变量后面添加一个...又如: 代码如下:[root@localhost sh]# var1=/etc/[root@localhost sh]# var2=yum.repos.d/[root@localhost sh]# var3=${var1}${var2}[root@localhost sh]# echo $var3/etc/yum.repos.d/
  • shell脚本 使启动或关闭Linux中部署的项目更加简单 通过 sh shell.sh start 命令启动项目 通过 sh shell.sh stop 命令关闭项目 使你不在使用大量的命令去启动和关闭你所部署的项目
  • 方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:复制代码 代码如下:cd /data/shell./hello.sh./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 98,719
精华内容 39,487
关键字:

linux 关闭sh脚本