在linux系统内,如何将一个shell脚本添加到自动启动项?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在linux系统内,如何将一个shell脚本添加到自动启动项?相关的知识,希望对你有一定的参考价值。

不管你用什么用户名登录, 你的根目录下都应该有个自动加载脚本:
cd ~
vi .bashrc (这个是bash的,如果是tcsh,文件该是.cshrc )
然后把你的执行脚本的命令放进去就行了,完了之后重启或者执行source .bashrc
比如:
root@alex:~# cat ~/.bashrc
# 执行/usr/bin目录下的abc.sh

/usr/bin/abc.sh

# 或者执行当前目录下的abc.sh
./abc.sh追问

我需要把/etc/bashrc都改成/user/home/abc.sh还是怎么做。在线等,谢谢

追答

不用改,再加一行,是单独的命令,跟那没关系,你就在最下面,或者最上面加一行
./user/home/abc.sh

追问

显示找不到文件,我的shell里引用的文件什么的是不是都需要写绝对路径。

追答

那肯定了,不然它哪知道上哪找?

参考技术A crontab -e 里面添加
* * * * * command
分 时 日 月 周 命令

例如:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。追问

不是要重启服务,而已在开机启动的时候自动执行一个shell脚本。

参考技术B 在你的$HOME/.profile里面调用这个脚本就行了。追问

我的里面只有.bash_profile不知道是不是您所说的,我在里面引用脚本,提示找不到文件。我的shell里面应用的东西是不是也要写绝对路径。

追答

.bash_profile应该也可以的。 应该用绝对路径。

这个不行的话就新建一个.profile,在.profile里面调用。

Shell脚本

一?脚本

(1)
脚本是一个特殊的应用程序,它介于操作系统内核与用户之间充当了一个命令解释器的角色,
负责接受用户输入的操作指令并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。
(2)组成
①将命令按顺序保存到一个文本文件中。
②添加执行权限。

(3)Shell环境I/O操作:
①重定向:在Linux系统维护中,改变输入,输出内容的方向,而不使用默认的标准输入,输出设备。
1) 重定向输出:将命令的正常输出结果保存到指定文件中。

:输入 >>:追加
2)重定向输入:将命令中接受输出的途径由默认的键盘改为指定的文件。
<:输出
3) 错误重定向:
2<:错误
②管道:管道操作为不同命令之间的协同操作提供了一种机制,位于管3道符左侧的命令的输出结果将作为右侧命令的输入(处理对象)。
1) awk命令:起分隔作用,F用来指定分隔符号。

二?Shell变量
(1) 自定义变量
① 定义新的变量:直接指变量名称并赋给初始值。
基本格式:变量名=变量值
② 查看和引用变量的值:通过在变量名前加“$”可以引用一个变量的值,使用echo命令可以查看变量。
③ 变量赋值的特殊操作:
1) 双引号(”):双引号起界定字符串的作用,特别是当要赋值的内容中包含空格时,必须用双引号括起来。
在双引号范围内,使用“$”可以引用其他变量的值。
2) 单引号(’):当要赋值的内容中包含特殊意义的字符时,应使用单引号括起来。
(任何字符均作为普通字符看待,赋值内容包含单引号是时应用/’进行转义。)
3) 反撇号(`):反撇号主要用于命令替换,允许将执行某个命令的屏幕输出结果赋值给变量。
4) Read:read命令用来提示用户输入信息,从而实现简单的交互过程。
④ 设置变量的作用范围:
Export:将局部变量设置为全局变量
⑤ 数值变量的运算:
+:加法运算 -:减法运算 *:乘法运算 /:除法运算 %:求模运算(取余运算)
(2) 环境变量:
主要用于设置用户的工作环境,包括,用户宿主目录,命令查找路径,用户当前目录,登录终端等。
(3) 位置变量:
(4) 预定义变量:

以上是关于在linux系统内,如何将一个shell脚本添加到自动启动项?的主要内容,如果未能解决你的问题,请参考以下文章

求助:如何在shell脚本中添加写日志的功能

linux下所谓的挂载是啥意思?请给一个很详细的回答。谢谢

Shell脚本

如何让shell脚本变成可执行文件

linux下如何将jar添加到java项目中

linux-shell scripts 脚本的初步认识