1、开机启动时

  Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。

  init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d ( /etc/rc?.d) 目录下的脚本文件,可以使init自动启动其它程序。

/etc/rc:This file is responsible for starting/stopping services when the runlevel changes

例如:

  编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。

2、登录时

Q:bash启动时,会进行初始化,初始化就是执行一些脚本,有哪些脚本呢?

A:分2种情况

①登录时启动的bash,登录shell

初始化脚本执行顺序:/etc/profile-->/etc/profile.d/*.sh-->~/.bash_profile-->~/.bashrc-->/etc/bashrc

#如果这些脚本中的变量发出冲突,那么以最后一个脚本的设置生效。

②登录后启动的bash,非登录shell

初始化脚本执行顺序:~/.bashrc-->/etc/bashrc-->/etc/profile.d/*.sh

注意:这些脚本中不要乱增加内容。例如:在脚本中增加echo,这会导致每次登录都输出echo(常用恶作剧)。

3、退出登录时

  退出登录时,bash自动执行个人的退出登录脚本.bash_logout。

例如:

  在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。

4、定期自动运行程序

①使用at命令调用atd进程设置在某个特定的时间,执行一次性任务。

②使用crontab命令调用crond进程,设置按固定的周期(如每天、每周等)重复执行预先计划好的任务。

  Linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。

  用户可以通过crontab 命令来建立、修改、删除这些命令文件。

转载于:https://blog.51cto.com/12879490/1923494

如何在Linux实现自动运行程序相关推荐

  1. 在Red Hat Linux中自动运行程序

    在Red Hat Linux中自动运行程序 1.开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置文件继续引导过程,启动其它进程.通常 ...

  2. red hat linux怎么运行,Red Hat Linux中自动运行程序

    1.开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置文件继续引导过程,启动其它进程.通常情况下,修改放置在 /etc/rc或 /et ...

  3. /etc/rc.local 与 /etc/init.d Linux 开机自动运行程序

    1. /etc/rc.local 这是使用者自订开机启动程序,把需要开机自动运行的程序写在这个脚本里 --------引用---------------------- 在完成 run level 3 ...

  4. /etc/rc.local 与 /etc/init.d Linux 开机自动运行程序

    linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘. 本文中假设inittab中设置的init tree为: /etc/rc.d/rc0.d /etc/rc ...

  5. 如何在linux上直接运行python程序

    如何在linux上直接运行python程序 一.前言 二.具体步骤 一.前言 个人主页: ζ小菜鸡 大家好我是ζ小菜鸡,小伙伴们,让我们一起来学习如何在linux上直接运行python程序. 如果文章 ...

  6. 【操作系统】如何在linux系统下运行C程序

    如何在linux系统下运行C程序 linux系统与windows系统不同,如何在linux中运行C,我们来看看吧. 工具/原料 Linux虚拟机 电脑 方法/步骤 查看全文 http://www.ta ...

  7. 如何在linux下开发java程序

    背景 如何在linux下开发java程序,或者更具体一点在linux开发java SDK, 首先明确一下几点 开发工具 如果编译 如何运行 如果写单侧 开发工具 编辑器: 可以直接安装PowerVim ...

  8. linux下软件编译终止,[2018年最新整理]linux下编译运行程序命令大全.ppt

    [2018年最新整理]linux下编译运行程序命令大全 1. 项目课题引入 2. Vi编辑器的使用方法 3. Linux中C语言程序的编辑 4. Linux中C语言程序的运行 5. 现场演示案例 课题 ...

  9. mac启动自动运行程序_什么启动了,为什么在我的Mac上运行?

    mac启动自动运行程序 You're scrolling through Activity Monitor when you notice a process you're not familiar ...

最新文章

  1. 00后电竞女学霸直博中科院,本科武大王者全国16强,网友:现实版爽文女主角...
  2. mysql创建用户以及授权
  3. oracle逻辑备份和物理备份,oracle数据库物理备份和逻辑备份区别
  4. 远程桌面端口修改批处理
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的企业客户管理系统
  6. 判断QButtonGroup中哪个QRadioButton被选中
  7. 黄聪:用于 Web 应用程序项目部署的 Web.config 转换语法
  8. Qt核心剖析: moc
  9. Kafka从上手到实践 - 实践真知:搭建Kafka相关的UI工具 | 凌云时刻
  10. Android URL Scheme
  11. Centos7 安装Luarocks过程
  12. 控制工程中的数学建模(4)——控制系统时域数学模型建立的一般步骤(之一)
  13. 数学建模:层次分析法(AHP)详细步骤
  14. PayPal注册和认证说明,招商银行信用卡和牡丹国际借记卡
  15. mysql拖库_利用SQL注入漏洞拖库的方法
  16. JAVA核心基础笔记(上)
  17. 根据导函数奇偶性求高阶导数
  18. 计算机学院方阵入场词,运动会入场方队解说词
  19. 免费内网穿透软件一步设置实现外网访问
  20. 牛客网第九场多校联赛 E Music Game

热门文章

  1. 三星二级菜单_你变我也变,神奇的excel二级联动下拉菜单
  2. shell 中 if then语句中会跟着-ne -ge之类的参数的含义
  3. 页面中的多选框的非空判断
  4. 用二项逻辑斯蒂回归解决二分类问题
  5. 《随笔记录》20170310
  6. C# 视频监控系列(10):服务器端——验证、设置画面质量、字幕叠加、板卡序列号...
  7. 简便的golang orm
  8. 基于 REST 的 Web 服务:基础
  9. 10 种机器学习算法的要点(附 Python 和 R 代码)(转载)
  10. 人脸识别技术大总结(1):Face Detection Alignment