我有一个.sh 文件,执行它只需进入包含的文件夹并写入./file.sh。
我想在会话开始时执行该文件,所以我在 /etc/init.d 中创建一个符号链接。
我期望它在我开始会话时执行,但它不起作用。
该文件的权限旁边写有“x”,所以我认为它是可执行的。
有什么帮助吗?
哈维
答案1
Dash-->启动应用程序-->添加-->/路径/到/你的/.sh
答案2
/etc/init.d/
包含正在执行的脚本系统启动。
如果您希望file.sh
每次打开终端时都启动,请在文件中调用此脚本.bashrc
:
# Start this awesome script
. /path/file.sh
答案3
有上亿种方法可以做到这一点,但是从现有的地方开始,要向旧的 init 系统添加某些内容,您需要运行以下命令:
sudo update-rc.d foo defaults
foo
你的脚本名称在哪里?
一些流行的替代方案:
- 编辑
/etc/rc.local
以在之前调用您的脚本exit
。 - 创建 upstart 脚本。这是 Ubuntu 过去几个版本中提供的 System-V init 的替代品。如果你想更好地控制脚本的调用时间,那么这个工具相当不错,但需要做更多的工作。
- 通过 gnome 或其他方法从您的 X 会话中启动它(如果这是一台图形机器)(仅这些方法可能就有五亿种)
答案4
或者
~/.config/autostart/ --->Create a file (filename.desktop)
filename.desktop in file add:
#!/bin/bash
[Desktop Entry]
Name=startdeskapp
GenericName=Program
Comment=auto start a sample
#
Exec=startdesk.sh # app file name (default as bin/)
Terminal=false
Type=Application
Icon=icon.png
Categories=Network;
StartupNotify=false