ubuntu18启动自运行shell脚本_ubuntu18设置定时任务并启动shell脚本 - CSDN
精华内容
参与话题
  • ubuntu编写开机自启动shell脚本

    万次阅读 2013-05-01 17:20:09
    1、首先编写一个简单的shell脚本  vimtest.sh(不习惯使用vim可以使用nano)  进入vim后按i键,然后输入(#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。) #!/bin/bash echo"Helloworld!...

    1、首先编写一个简单的shell脚本


        vimtest.sh(不习惯使用vim可以使用nano)
        进入vim后按i键,然后输入(#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。)
    #!/bin/bash 
    echo"Helloworld!"
    
    filename=`date"+%Y%m%d"` 
    echo$filename
        然后先Esc再shift+z两次(保存)
        在命令行输入:    chmod  +x test.sh   (赋予执行权限)
        运行:./test.sh

        查看命令的路径:whichls(假设查看ls命令的路径)
        #后面的内容表示注释,要养成写注释的良好习惯


        更多shell编程知识       shell编程简介


    2、设置脚本开机自启动


    方案一:

        编辑 /etc/init.d/rc.local 文件,在最后加上你的脚本即可。
        比如:我已经编写了一个脚本apk.sh,存放在/home/apk/下面
                在Ubuntu终端输入:    sudo nano /etc/init.d/rc.local
                在结尾出加入: sh  /home/apk/shell.sh                 //即可开机自动加载脚本

    方案二:


        1) 将你的启动脚本复制到 /etc/init.d目录下
                sudo cp test.sh /etc/init.d/

        2)执行如下命令将脚本放到启动脚本中去:
                cd /etc/init.d
                sudo chmod 755 /etc/init.d/test.sh
                sudo update-rc.d test.sh defaults95

    注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:
    
            update-rc.d: warning: /etc/init.d/test missing LSB information
    update-rc.d: see
     
    卸载启动脚本的方法:
                cd /etc/init.d
                sudo update-rc.d -f test.shremove


    注意事项:

        开始我使用forever命令写了一个脚本,如下:
                #!/usr/local/bin/forever
                forever start /home/apk/apkAnalysis/app.js

        可是不论我使用什么方法它都启动不起来,后来发现它少了一个sudo权限:
                #!/usr/local/bin/forever
                sudo forever start /home/apk/apkAnalysis/app.js

        所以在配置开机启动的时候一定要注意sudo的使用。

        查看系统启动的日志:cat /var/log/boot.log
        开始是一直都起不来,看了下日志,发现文件不存在;登录之后查看文件是存在的,可能是执行启动脚本的时候用户目录还没有mount上来

    然后把工程放到srv目录下面就可以开机自启动了。
    改一下权限sudo chmod 775 /srv/
    展开全文
  • 1、新建个shell脚本文件(例starter.sh) 内容如下 #!/bin/sh ### BEGIN INIT INFO # Provides: starter # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 ...

    1、新建个shell脚本文件(例starter.sh)

    内容如下

    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides:          starter
    # Required-Start:    $remote_fs $syslog
    # Required-Stop:     $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: start starter
    # Description:       start starter
    ### END INIT INFO
    
    su --l username
    
    sh /home/username/workspace/apache_tomcat_v2/bin/startup.sh
    
    cd /home/username/workspace/node-v9.9.0-linux-x64/bin/
    
    node /home/username/project/testing/python/test1.js&
    
    node /home/username/project/testing/python/test2.js
    
    exit 0

    其中starter是你的脚本文件名,

    ### END INIT INFO下是你要写的shell脚本,然后需要开机自启的

    2、设置权限

    sudo chmod 755 starter.sh  

    3、把脚本放到启动目录下

    sudo mv starter.sh /etc/init.d/

    4、将脚本添加到启动脚本

    cd /etc/init.d/  
    sudo update-rc.d starter.sh defaults 90  

    后面90数字是你设置的启动序号,越大级别越低,执行越晚

    ps:如果想要移除开机自启脚本

    sudo update-rc.d -f starter.sh remove

    扩展资料

    SU:( Switch user切换用户),可让一个普通用户切换为超级用户或其他用户,并可临时拥有所切换用户的权限,切换时需输入欲切换用户的密码;也可以让超级用户切换为普通用户,临时以低权限身份处理事务,切换时无需输入欲切换用户的密码。

    参数

    -c<指令>或--command=<指令>:执行一个指令后就恢复原来的身份;

    -f或--fast:使shell不用读取启动文件,适用于csh和tcsh;

    -,-l,--login:切换用户时,使环境变量(home,shell,user,logname,path等)和欲切换的用户相同、

    不使用则取得用户的临时权限;

    -m,-p,:变更身份时,保留环境变量不变;

    -s<shell>,--shell=<shell>:指定执行命令的shell;

    --help:显示帮助;

    --version:显示版本信息;

    用户账户:指定欲切换用户,默认切换为root。

    注:root权限极高,几乎可以做任何事,谨慎使用,平时使用普通用户登录,必要时临时切换为root,用完即切换回普通用户。

    参考资料:百度百科—su

    或直接在/etc/rc.local文件中添加shell指令

    展开全文
  • 一、建立脚本文件: 二、设置权限 三、将脚本文件放到启动目录下 四、更新优先级 cd /etc/init.d sudo update-rc.d startm.sh defaults 90 至此,开机启动已经完成,我们可以通过reboot重启linux,来...

    一、建立脚本文件:

    二、设置权限

    三、将脚本文件放到启动目录下

    四、更新优先级

    cd /etc/init.d
    sudo update-rc.d startm.sh defaults 90

    至此,开机启动已经完成,我们可以通过reboot重启linux,来查看jar包是否已经启动成功。而且,在/etc/rc2.d、rc3.d、rc4.d、rc5.d文件夹中也可以看到我们的startm.sh脚本文件,进一步说明设置没有问题。

    移除开机脚本的方法(注:移除脚本的方法我没有尝试,不过应该也没有问题,写在这里留作备用。):

    原文出处:http://www.jb51.net/article/100413.htm

    脚本开机启动方法本人亲自试过,是没有问题的,值得注意的是,脚本中的地址一定要用绝对路径,这样才不会出现路径不匹配,找不到目标jar包的情况出现。

    展开全文
  • Ubuntu运行Shell脚本

    千次阅读 2018-05-19 15:27:27
    将一个脚本保存为带有扩展名的文件,如test.sh, 在终端上输入: chmod +x test.sh 然后输入: test.sh 终端显示: test.sh 找不到命令(后来看了鸟个私房菜,发现这样输入,系统只会在$PATH上列出的路径查找,而不会...

    将一个脚本保存为带有扩展名的文件,如test.sh,

    在终端上输入: chmod +x test.sh

    然后输入: test.sh

    终端显示: test.sh 找不到命令(后来看了鸟个私房菜,发现这样输入,系统只会在$PATH上列出的路径查找,而不会查询当前的目录有没有这样的命名,以找到的第一个为准)

     

    但是,如果在终端上输入: ./test.sh(这样就让系统在当前的目录下查询命名)

    就能运行成功。

    另外,如果脚本文件没有扩展名的话,在终端上输入: ./test 或者 test

    脚本都能执行成功,这是为什么呢?

     

    当然,如果不想输入chmod那一行命令的话,也可以直接执行,直接在终端上输入:

    /bin/sh test

    或者

    /bin/sh test.sh

    转载自https://www.cnblogs.com/mengshu-lbq/archive/2010/10/26/1861766.html
    展开全文
  • Ubuntu中如何双击后运行shell脚本

    万次阅读 2018-03-06 15:03:19
    当你双击一个脚本(.sh文件)的时候,你想要做的是什么?通常的想法是执行它。但是在Ubuntu下面却不是这样,或者我应该更确切地说是在Files(Nautilus)中。...shell脚本用文件编辑器打开的原因是F...
  • ubuntu 开机启动shell脚本

    千次阅读 2018-05-30 17:11:54
    1.创建shell启动脚本test2.将启动脚本复制到 /etc/init.d 目录下3.设置脚本文件权限sudo chmod 755 /etc/init.d/test4.设置脚本启动sudo update-rc.d test defaults 95 //95 为启动优先级,越小优先级越高// 执行后...
  • Ubuntu 18.04 设置开机自动执行脚本

    千次阅读 2019-08-06 09:11:54
    前言 Ubuntu18.04 默认是没有 /etc/rc.local 这个文件的,需要自己创建 systemd 默认读取 /etc/...执行 ls /lib/systemd/system 你可以看到有很多启动脚本,其中就有我们需要的 rc.local.service 查看rc.local...
  • ubuntu中写一个shell脚本的过程

    千次阅读 2014-10-28 11:05:08
    gedit hello.sh ,然后输入 #!/bin/bash echo "Hello world!" chmod +x hello.sh ./hello.sh
  • Ubuntu开机自启动脚本配置

    千次阅读 2018-07-26 11:46:24
    本文介绍一种简单的方式来配置ubuntu开机启动脚本,分别介绍了root用户和普通用户的配置方式,同时给出一种在rc.local执行阶段无法加载环境变量的解决方案。
  •  作用:在当前bash环境下读取并执行FileName中的命令。该filename文件可以无”执行权限” 注:该命令通常用命令“.”来替代。 如:source bash_profile . bash_profile两者等效。 source(或点)命令通常用于...
  • ubuntu上第一个shell脚本

    万次阅读 2017-05-27 10:20:08
    参考:https://billie66.github.io/TLCL/book/zh/chap25.htmlUbuntu下第一个shell脚本在home目录下新建文件夹xkmkdir xk进入xk文件夹,新建文件helloshelltouch helloshell在helloshell文件中输入如下内容:#!...
  • ubuntu中编写shell脚本开机自动启动

    千次阅读 2019-07-14 02:20:59
    编写脚本是为了不用手动去开启各种服务(也是为了偷懒哈哈) 1.进入终端输入 # 创建一个后缀为.sh的脚本文件 touch test.sh # 编辑脚本 vim test.sh # test.sh编写脚本内容 2.编写test.sh脚本 1 #!/bin...
  • 2,写shell脚本,命名为myshell.sh #!/bin/bash sudo python test.py \r echo &amp;amp;amp;amp;quot;执行完毕&amp;amp;amp;amp;quot; exit 0 2个脚本都放在/home/目录下 3,添加到定时任务 crontab -e ...
  • 看的是鸟哥的私房菜,里面有讲到执行shell脚本有两种方法: 1. 设置执行属性: chmod 755 file 执行(如果已经在当前目录) : ./file 2. 使用: sh file 执行 .但是在vmware里装的ubuntu 11.10却无法执行 #!/bin/...
  • ubuntu运行sh脚本sudo自动输入密码

    万次阅读 2017-05-10 14:37:43
    示例: sudo apt-get update  第一种方法:使用管道(上一个命令的 stdout 接到下一个命令的 stdin): #!/bin/bash echo password | sudo -S apt-get update第二种方法 使用文本块输入重定向: ...E
  • ubuntu linux下执行.sh文件

    万次阅读 2014-01-07 20:53:39
    ubuntu linux下执行.sh文件 首先,要确保这个文件的类型是可执行的。 ...有两种办法把文件设置为可执行文件。...1) 直接在文件属性标签中选中 "可执行",--b 如果...然后,执行这个shell脚本文件。 1) 双击 file.sh
  • ubuntu启动执行启动脚本流程

    千次阅读 2015-04-19 15:18:54
    当前系统环境为:linux .../etc/rc*.d文件夹中的脚本文件的链接目标为:/etc/init.d文件夹下的脚本(*为系统运行级别‘数字’和字母:S,系统优先运行rcS.d目录下的脚本,然后运行rc‘数字’.d下的脚本) Linux系统
  • 注意事项:如果脚本没有执行,首先应该考虑执行权限问题,查看脚本和相应的文件是否有执行权限,如果没有需要赋予执行权限。 方法1: 1.编写一个shell脚本文件,例如python_auto.sh,文件内容: 2.编写start.py...
  • Ubuntu构建一个简单基本脚本

    千次阅读 2019-03-17 20:39:23
    但有时候我们需要输入多个命令,并处理多个命令的结果,甚至需要将一个命令的结果传给另一个命令,因此我们需要用到shell脚本,将多个命令串联起来。在shell中如果想要两个命令一起运行,可以把它们放在同一行,同时...
  • Ubuntu运行 Shell 脚本

    千次阅读 2019-07-17 14:45:31
    将一个脚本保存为带有扩展名的文件,如 test1.sh, 内容,例如: #/bin/bash echo -n "enter login name:" read name echo -n "enter password:" read pwd if [ $name = "abc" -a $pwd = "123" ] # 模拟登陆...
1 2 3 4 5 ... 20
收藏数 44,801
精华内容 17,920
关键字:

ubuntu18启动自运行shell脚本