关于Linux的法院执行局办案流程脚本的问题想请教下

查看:14013|回复:29
RHEL红帽6的系统,想要在系统启动后自动执行一个脚本,这个脚本是在x界面中打开一个图形界面,比如/opt/aa.sh这个脚本,如何在系统启动以后执行呢,写入rc.local是没用的,因为它是在登录前生效的,如何在登录后执行呢。
我觉得写个计划任务比较好,crontab -e& &让这个脚本在系统启动以后的1分钟后运行
不知道 对不对&&希望大牛可以帮忙。
初级工程师
放~/.bashrc 试试?
应该是在.bashrc或是.bash_profile中,二楼的crontab你怎么能算出系统启动1分钟来?
高级工程师
Linuxの小凡
引用:原帖由 voostar 于
16:48 发表
放~/.bashrc 试试? voostat大哥的意思是等系统执行这两个文件的时候来执行打开脚本工作么?
现在客户想要的是,系统重启后登录账户后,自动就会弹出要启动的图形界面,而不需要其它操作,例如打开终端之类的,都是不可以的
高级工程师
Linuxの小凡
引用:原帖由 princepar 于
17:45 发表
现在客户想要的是,系统重启后登录账户后,自动就会弹出要启动的图形界面,而不需要其它操作,例如打开终端之类的,都是不可以的 按照你的这个意思,我的理解是直接设置启动级别为5不就行了?
是不是还要求不显示终端的显示一下的那个画面?
对,在正常情况下需要打开终端,执行sh aa.sh这调命令才能打开,但是客户要求的是终端不用打开(启动级别肯定为5,因为要进入X界面),登录账号进入系统的x界面后,就会自动弹出应用程序的图形界面。
中级工程师
比如要在登录gnome后自动启动一个终端,在 ~/.bash_profile 中加入 /usr/bin/gnome-terminal &
比如我现在的配置文件就是引用:# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
/usr/bin/gnome-terminal &[/quote]
热心帮助,这兄弟啥都不说,论坛的骄傲! ...
本帖最后由 cj4777 于
17:33 编辑
高级工程师
Linuxの小凡
引用:原帖由 cj4777 于
17:31 发表
比如要在登录gnome后自动启动一个终端,在 ~/.bash_profile 中加入 /usr/bin/gnome-terminal &
比如我现在的配置文件就是[/quote]
你这个脚本可以应用到所有开机启动项不?
中级工程师
应用到所有开机启动项?不知道我有没有理解错你的问题。
如果用户主目录没有 .bash_profile 这个文件的话,把 /etc/profile 这个文件复制到用户目录并将名字改为 .bash_profile 就可以了,然后把想要在开机的时候打开的东西写进这个脚本就可以,甚至可以直接在 /etc/profile 中修改,不过这样修改的话就是针对这个主机的所有用户的。
高级工程师
Linuxの小凡
引用:原帖由 cj4777 于
20:30 发表
应用到所有开机启动项?不知道我有没有理解错你的问题。
如果用户主目录没有 .bash_profile 这个文件的话,把 /etc/profile 这个文件复制到用户目录并将名字改为 .bash_profile 就可以了,然后把想要在开机的时候打开的 ... :(mars_17): 我也就是这个意思,那这个脚本不是可以取代rc.d了?
中级工程师
貌似不能吧?那个是用户的主配置文件,和rc.d应该是两个概念的,明天去研究下rc.d再来回复。
初级工程师
cj4777的方法应该是正确的,.bash_profile是针对个人的,只有登陆的时候才读取。
su voostar
就是转到voostart账号然后只读取/etc/profile
su - voostar
就是转到voostar账号然后读取/home/voostar/.bash_profile
积极交流,热心帮助,板块老大哥! ...
又学会了新知识。我是这么弄的勉强解决了这个问题,先把/usr/bin/gnome-terminal &写入.bash_profile文件中,然后把sh aa.sh写入/etc/bashrc中,开机后就会自动打开我想要打开的图形界面了。
但是又出新了新的问题,写入bashrc这个文件后,只要打开终端就会打开一个这个应用程序图形界面,如果打开4个终端就会打开4个图形界面,还要一个一个关,太麻烦,有什么好的解决办法吗?
积极思考,坚持学习,兄弟咱看好你! ...
高级工程师
Linuxの小凡
引用:原帖由 voostar 于
09:45 发表
cj4777的方法应该是正确的,.bash_profile是针对个人的,只有登陆的时候才读取。
su voostar
就是转到voostart账号然后只读取/etc/profile
su - voostar
就是转到voostar账号然后读取/home/voostar/.bash_profile ... :ldw7: 您说的这个针对个人应该如何理解?
高级工程师
Linuxの小凡
引用:原帖由 princepar 于
10:05 发表
又学会了新知识。我是这么弄的勉强解决了这个问题,先把/usr/bin/gnome-terminal &写入.bash_profile文件中,然后把sh aa.sh写入/etc/bashrc中,开机后就会自动打开我想要打开的图形界面了。
但是又出新了新的问题,写入bash ... :ldw9: 好问题啊,他们说是针对用户个体,那么您在实际应用中是不是因为要同开用一个用户打开多个终端?
& && && && & 如果不需要的话,还有解决方法,用不同的用户去登录或者设定组别来识别?
& && && && & 如果需要,那么是否可以利用脚本来判断当前已经是使用的终端数量来控制是否开启图形界面?
初级工程师
.bash_profile文件是放在个人家目录下的,账号登陆的使用引用。/etc/profile的内容有一段就是描述引用的,没记错的话。
中级工程师
貌似你弄错了吧?只要把你需要打开的东西写入 ~/.bash_profile 就可以了,我做的那个只是打开一个终端的范例。
不建议在/etc/profile 中直接改,把 你的脚本路径写入 ~/.bash_profile 就可以,然后在后边加一个 & 符号,代表在后台运行该脚本。
我的没有问题啊,我用mplayer 测试的,不会出现打开终端时每次都自动弹出来 mplayer 。
你再检查一下,或者哪不懂?
确实是我想复杂了,不过更深入的理解了rc.local、profile和.bash_profile几个文件的作用,真是谢谢各位了使用EditPlus 写Linux下执行脚本的一点注意事项-红联Linux系统门户
File Format(CR/LF)下选择Unix再保存,问题就解决了。
  另外sh中变量是使用$符来开头的。
  例如:
#---------" />
使用EditPlus 写Linux下执行脚本的一点注意事项
  使用EditPlus撰写Linux下执行的sh脚本的时候,有时候会发现在Linux下执行出错,一般导致这个问题的原因很简单,就是文件格式问题。 在EditPlus的Document->File Format(CR/LF)下选择Unix再保存,问题就解决了。
  另外sh中变量是使用$符来开头的。
  例如:
#----------
#----------
VAR_HOME =/opt/varhome/
#----------
#----------
mkdir -p $VAR_HOMELinux下怎样把js像脚本一样执行?
下怎样把js像脚本一样执行?
在Linux下,我们可以把JS文件当作shell脚本来运行,从而达到上述目的,具体步骤如下:
在shell脚本中,可以通过#!注释来指定当前脚本使用的解析器。所以我们首先在node-echo.js文件顶部增加以下一行注释,表明当前脚本使用NodeJS解析。
#! /usr/bin/env node
NodeJS会忽略掉位于JS模块首行的#!注释,不必担心这行注释是非法语句。
然后,我们使用以下命令赋予node-echo.js文件执行权限。
$ chmod +x /home/user/bin/node-echo.js
最后,我们在PATH环境变量中指定的某个目录下,例如在/usr/local/bin下边创建一个软链文件,文件名与我们希望使用的终端命令同名,命令如下:
$ sudo ln -s /home/user/bin/node-echo.js /usr/local/bin/node-echo博客访问: 178876
博文数量: 76
博客积分: 0
博客等级: 民兵
技术积分: 2363
注册时间:
分类: 网络与安全 17:49:02
今天在linux环境下做了一个定时任务,用java程序到oracle中查询数据,
手动执行脚本没有问题,但是定时任务执行时却一直报错:
- java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified
真是百思不得其解啊!也怀疑是环境变量的问题,但是又觉得应该是一样,
经过好长的努力,最后终于找到了解决办法,
http://bbs.chinaunix.net/thread--1.html
不要假定cron知道所需要的特殊环境,它其实并不知道。所以你要保证在shelll脚本中提供所有必要的路径和环境变量,除了一些自动设置的全局变量
1)脚本中涉及文件路径时写全局路径;
2)脚本执行要用到java或其他环境变量时,通过source命令引入环境变量,如:
cat start_cbp.sh
source /etc/profile
export RUN_CONF=/home/d139/conf/platform/cbp/cbp_jboss.conf
/usr/local/jboss-4.0.5/bin/run.sh -c mev &
3)当手动执行脚本OK,但是crontab死活不执行时。这时必须大胆怀疑是环境变量惹的祸,并可以尝试在crontab中直接引入环境变量解决问题。如:
0 * * * * . /etc//bin/sh /var/www/java/audit_no_count/bin/restart_audit.sh
阅读(2965) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
请登录后评论。

我要回帖

更多关于 法院执行局办案流程 的文章

 

随机推荐