Ubuntu用户目录下的profile文件适合加入启动客户端程序的脚本吗

如题,Ubuntu用户目录下的.profile文件适合加入启动客户端程序的脚本吗?
我有个项目是做在Ubuntu上运行的客户端程序,它需要在系统启动后自启,而使用自启服务的方式(update-rc.d)不能够自启我的这个客户端(因为它依赖gtk什么的,服务启动会报错),因此我打算采用在.profile文件中加入启动我的客户端脚本的方式来做,这样用户登录后可以自启,但不知道这样做是否合理,是否对用户系统有什么其他影响,请linux大神答疑解惑一下,或者有没有什么更好的方式自启我的客户端程序

0

1个回答

非常不适合

因为.profile的内容会在每个bash启动(而不是系统启动)的时候执行一次,比你用telnet 登录系统,在开启多个链接登录时,这个文件就会随之执行多次.
如果你的程序依赖gtk,那么应该设置你的程序的自启动优先级,在gtk之后,这样比较安全.或者不直接启动,而是启动一个后台监控程序,来监控gtk启动,再启动你的程序,

.profile中很少存在运行程序的例子,其中多数是环境变量的配置

0
cai642343061
言惜 谢谢,如果我的程序需要在登录后启动应该怎么做呢,其实主要是想以登录后的用户身份启动我的程序;另外怎么做能在退出登录(比如切换其他用户)时停止我的程序
10 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Ubuntu /etc目录下profile、bash.bashrc和用户目录下.profile、.bashrc的作用和区别
相关概念: nLogin Shell:需要输入账号密码Shell,比如tty1-tty6终端、通过ssh登录的终端 nNon-login Shell:不需要输入账号密码的Shell,比如图形模式下Ctrl+Alt+T得到的Terminal、Shell下的子进程nn区别: n/etc/profile、/etc/bash.bashrc文件是针对所有用户来说的,每个用户登录时都会执行,其中/etc/pr...
linux 家目录下的.bashrc 与.profile文件的区别
今天在干活时因为经常要重启nginx服务器,命令实在是冗长麻烦,所以想写一个快捷启动命令,这样每次重启的时候只要在命令行输入快捷命令就可以了,我分别在家目录的.profile文件和.bashrc两个文件里分别写了两个不同的别名:rn在.profile文件内:rnalias nginx_start="sudo /opt/nginx/sbin/nginx -c /opt/nginx/conf/ngin...
linux 新建用户无 .profile 问题
rnrnrn 1 新建一个用户,其家目录下面默认生成什么文件由 /etc/skel 目录决定,就是rn 这个目录下面有什么新建用户后家目录就生成什么.rn2 新建一个用户可以由 -d 参数指定家目录,如:rn useradd -d /home/test -u 500 -g oracle testrn 新建一个uid 500 oracle组,家目录为/home/test的用户test.r...
linux新建用户后,在“家”目录中没有.bash_profile文件
1、首先,使用root用户查看新建用户的“家”目录和shell类型:rncat  /etc/passwdrnoracle:x:500:500::/u01/app/oracle:/bin/bashrnrnrn注:只有shell是bash的话,才会需要.bash_profile这个配置文件,如果是csh或者tcsh的话,配置文件是.cshrc或者.csh_aliasesrnrnrnrn2、ls -la
了解Ubuntu中的几个配置文件profile和bash.bashrc
一、profilenn用户登录加载该配置文件或者说是shell脚本nn二、bash.bashrcnn当打开终端时会加载改配置文件nn注意:这两个配置文件都是shell脚本,也就是说你可以在里面添加一些自己的风格,比如打开终端先来个动画愉悦一下^^nn nn nn nn nn nn nn nn nn nn nn nn nn nn这个博主有详细介绍:https://blog.csdn.net/jirr...
验证linux shell在启动时会自动执行用户主目录下的.bashrc脚本
在本文中, 我们来一起验证linux shell在启动时会自动执行用户主目录下的.bashrc脚本(注意是.bashrc而不是bashrc)。n         如果你的主目录下没有.bashrc, 那也不要担心,自己建立一个就行了哈。n         n         实验一: 创建一个.bashrc文件(如果有, 那就不用创建, vim打开即可), 然后在其中加入一行, 如下:n#
Ubuntu中每次打开一个命令窗口都要执行source /etc/profile配置文件才生效
如题,每次新打开一个命令窗口都要重新输入 source /etc/profile 才能使jdk等配置文件生效:nnnabc@ubuntu:/usr/local$ java -versionnThe program 'java' can be found in the following packages:n * default-jren * gcj-5-jre-headlessn * openjd...
Ubuntu修复用户系统文件bashrc
输入命令nnncp /etc/skel/.bashrc ~nnn恢复成系统缺省的.bashrc
dibian / ubuntn 系统 在/etc/init.d 下面的服务脚本文件执行问题
就拿php-fpm 为例  service php-fpm start 执行报错:  Unit php-fpm.service could not be found. 突然想不起来怎么解决了,google 了一下update-rc.d php-fpm defaults  就好了,如果其它服务脚本执行文件在该系统遇到类似问题 也是如此解决,记录一下...
linux服务器上进入tomcat/bin目录,执行启动的时候出现如下错误
linux服务器上进入tomcat/bin目录,执行启动的时候出现如下错误:[root@test bin]# ./startup.shCannot find ./catalina.shThe file is absent or does not have execute permissionThis file is needed to run this program 解决方法:在tomcat 的...
Linux 当前账户下profile位置
~/.bash_profile
Linux下查看和添加PATH环境变量
1、先了解一下什么是PATH环境变量rn(1)环境变量rnrn环境变量相当于“快捷键”。nn一个“HOME=/home/ACCP286”的环境变量指明你在这个电脑上的个人主目录是“/home/ACCP286”,你每次要回到个人主目录时,不需要输入“cd /home/ACCP286”,只需要“cd $HOME”或者在文件管理器的地址栏输“$HOME”即可;你写一个脚本程序,用到你的个人主目录,也只需
shell小作业
1)使用shell程序可以完成哪些类型的工作? n2)使用shell编程时,如何将编写完成的shell程序提交给系统运行? nBash test.sh nBash ./test.sh ——./代表当前文件夹下 n3) 写一个脚本,传递两个整数给脚本,让脚本分别计算并显示这两个整数的和,差,积,商。nn#!/bin/bashncalculate(){nfirst=${1}nsecond=${2}n...
crontab 指定脚本运行的根目录
参考链接  http://blog.sina.com.cn/s/blog_a04184c101010kpx.htmlrnrnrnrnrn定时脚本中使用file_put_content 写入一个相对路径的文件  但是没有写入 后来设置下面的路径就ok了 rn指定脚本运行的根目录 HOME = /self_dir
shell脚本文件扫描-使用shell脚本读取当前目录下所有文件的包含字符串
n#! /bin/bashn#!/bin/bash nfunction read_dir(){ n for file in ` ls $1 ` n do n if [ -d $1"/"$file ] n then n read_dir $1"/"$fil...
后台运行start.sh
不输出信息rnnohup ./start.sh >/dev/null 2>&1 &
zookeeper集群启动脚本
zookeeper集群启动脚本
/etc/profile文件和Python源文件设置任意路径下都能运行
1、当在/etc/profile文件里配置路径时出错,为什么ls等系列指令都失效了呢?rn根据我的理解,/etc/profile文件就相当于main函数。当我们使用命令时,系统会先向/etc/profile文件中找,如果找不到的话再去找其他文件。但当/etc/profile文件被破坏时,系统找不到/etc/profile文件,就像程序找不到main方法,那么这个指令就被提示无效。rnrnrn2、如
shell脚本文件查看用户目录下的某类文件
点击个人博客,查看更多文章https://elonjelinek.github.io/n查看用户目录下的以.bash开头的文件n#!/bin/bashnnfor FILE in $HOME/.bash*ndon echo $FILEndonenn先在用户目录下创建一个脚本文件:touch bas.sh,再打开这个文件:open bas.sh,往里面写入上面的四行命令。n给与该文件可执行权限:c...
在任意目录下使用某个shell脚本
之前只知道如果想用某个命令的话,在环境变量里设置下这个目录就好了,其实在任意目录下使用某个shell脚本,也是在环境变量里配置。 n我的是mac环境: n1. 执行命令 open ./.bash_profile n2. 在文件中添加目录,比如我想用dex转jar的shell脚本,就添加export PATH=/Users/luoxiaohui/apktool/dex2jar-0.0.9.15:$PA
redis的bin目录下的脚本含义
bin目录文件说明nnredis-benchmark 脚本用于性能测试nnredis-check-aof 脚本用于redis数据持久化,是来一条存储一条nnredis-check-rdb 脚本用于redis数据持久化,是每隔一段时间存储一次nnredis-cli   脚本用于客户端对redis的连接nnredis-sentinelà  -- >redis-server  脚本用于集群上nnr...
LINUX下,用脚本处理一个目录所有文件的代码
  文件convert-dir.shnnnnROOT_DIR=/media/quantum6/disk/SOFTWARE/videos/wuxinCONVERT_H264=/home/quantum6/Develop/videos/convert_to_h264_by_nv.shnncd $ROOT_DIRnn# 只列出目录nfor path in $(ls -d *)ndon # 检测是否...
Linux 中 rc.local、init.d、rc.x、init 这几个文件(夹)各有什么作用?启动执行的脚本应该均放在 rc.local 中吗?
Linux 中 rc.local、init.d、rc.x、init 这几个文件(夹)各有什么作用?启动执行的脚本应该均放在 rc.local 中吗?nhttps://www.zhihu.com/question/20126189nn网址:nnnnn这个问题涉及到Linux初始化init系统,RHEL 5为SysVinit,RHEL 6为Upstart,RHEL 7为Systemd,
Ubuntu添加开机启动执行脚本
Ubuntu添加开机启动执行脚本方法一:编辑rc.loacl脚本Ubuntu开机之后会执行/etc/rc.local文件中的脚本, n所以我们可以直接在/etc/rc.local中添加启动脚本。 n当然要添加到语句:exit 0 前面才行。 n如:sudo vi /etc/rc.local然后在 exit 0 前面添加好脚本代码。方法二:添加一个Ubuntu的开机启动服务n先将脚本复制或者软连接到/
linux之如何在任意目录执行我常用的脚本文件
1、问题rn比如我们在ubuntu上开发Android的时候,经常会用到jadx、 pidcat.py ,但是我们希望在任何目录都能执行这些命令,rn如果不知道pidcat.py是什么东西的,可以先百度rnrnrnrnrnrnrnrnrnrn2、解决方式rn  1)如果是一个脚本文件,比如pidcat.py这个脚本,直接把pidcat.py放在/usr/local/bin/这个目录下面就行,rn 
ubuntu设置开机自动启动脚本
有时候我们想要脚本开机自动运行,那么就需要设置开机自启动脚本。首先将脚本复制或者软连接到/etc/init.d/目录下然后update-rc.d xxx defaults NN命令(NN为启动顺序)将脚本添加到初始化执行的队列中去。注意如果脚本需要用到网络,则NN需设置一个比较大的数字,如99举个列子先创建一个简单的shell脚本test.sh,这个脚本的作用是在开机的时候创建一个test.txt文
linux下设计一个Shell脚本:判断当前工作目录下所有的文件类型。
问题:设计一个Shell脚本:判断当前工作目录下所有的文件类型。rn①如果是目录,显示目录名;rn②如果是文件,查看文件内容;rn③如果都不是,显示提示信息。rnrnrnShell代码:rnrnrnrn调用Shell脚本执行结果:
在centOS中vim的配置文件存放在/etc/vim目录中,配置文件名为vimrc
在centOS中vim的配置文件存放在/etc/vim目录中,配置文件名为vimrcn在终端 输入以下命令来编辑vimrc配置文件:nvim /etc/vimrc 或者 /etc/vimrcn这里跟ubuntu稍微不一样n1、显示行号n在文件末端添加一新行,输入 set nun2、语法高亮n在文件中找到 “syntax on 这一行,去掉前面的双引号”,双引号是注释的意思n3、自动缩进n在文...
利用zookeeper和kafaka自带脚本一键启动集群脚本(高手进阶篇)
先来设置一下zookeeperrnrn先随便起个脚本名,脚本放在/usr/local/bin/下面rn这里以3台机器为例rnrn启动zookeeper集群rn#!/bin/bashrnssh hadoop01 "/home/hadoop/install/zookeeper-3.4.5/bin/zkServer.sh start"rnssh hadoop02 "/home/hadoop/install/zookee...
Ubuntu下Tensorflow的GPU配置:Linux开机不能自动加载 ~/.bash_profile 文件的解决方法
终端启动分为login 和 non-login两种方式, non-login 方式启动是不加载~/.bash_profile 文件的。
Ubuntu terminal中添加命令执行路径
在Terminal中如何在任何目录下都能执行名为xx.sh的脚本?为了解决这个问题,首先需要知道Terminal下执行脚本的过程。n在系统默认环境变量PATH中的路径下查找当前脚本 n执行该脚本n如何查看系统默认环境变量PATH中的路径?nenv | grep PATH necho $PATHn如何向PATH中添加路径?nexport PATH=$PATH:/your/path/ (在重启计算
目录下所有jar拼接classpath脚本
nwindows:rn rnset MY_HOME=%~dp0rnrn@setlocal EnableExtensions EnableDelayedExpansionrnrnset CLASSWORLDS_JAR=.rnfor /F %%i in ('dir /a-d/b/s ..\lib\*.jar') do set CLASSWORLDS_JAR=!CLASSWORLDS_JAR!;%%ir...
Ubuntu 用户目录下文件夹改成英文的方法
安装Ubuntu时选择的是中文,但是因为在终端操作时,中文的路径非常之难用,“图片” “下载”等等,还是download, Pictures 好用。可在语言支持中把English 拖动到中文之上,注销登出一下即可,然后再update一下就ok了:nn nn nnnn参见:https://blog.csdn.net/ouyangying123/article/details/77413105nn ...
oracle用户下.bash_profile文件修改
Linux安装oracle时候,oracle用户下.bash_profile文件修改内容备忘
编写shell脚本一键下载特定目录下的tar.gz包文件
n n n 1、背景概述:nn工作中遇到这样一种情况,就是有时候需要下载服务器某个目录下面所有后缀名为tar.gz的压缩包到本地目录存放,一般我们都会直接使用sz命令直接进行文件传输下载,但是需要一级一级cd到相关的目录下去。这样就比较繁琐,而且有的时候遇到层级目录结构比较深的更是抓狂,但是如果通过编写一个shell脚本来执行这项重复的操作就比较方便了,基本可以实现一...
Linux 的一些基础练习题
练习题:1,显示当前时间,格式为:2016-06-18 10:20:30答案:date “+%F,%T” 或者 date “+%F %H:%M:%S” 2,显示前天是星期几?答案:date -d “-2 day” +%A知识点:一 ,date +%s 是把当前时间转化为秒数         二, date -d @”1523604170″ 把秒数转化回来 3,今天18:30自动关机,并提示用户。答...
linux 配置全用户的环境变量,profile.d文件夹的作用
Linux 环境下/etc/profile和/etc/profile.d 的区别n区别:nnn1. 两个文件都是设置环境变量文件的,/etc/profile是永久性的环境变量,是全局变量,/etc/profile.d/设置所有     用户生效n2. /etc/profile.d/比/etc/profile好维护,不想要什么变量直接删除/etc/profile.d/下对应的shell脚本
shell脚本程序设计(一)
(一)要求:1、在SHELL语句中加入必一要的注释,以便以后阅读和维护,注释以”#”开头。   2、对变量和函数命名时最好能使用有含义且容易理解的名字。 nn(二)内容:1、创建以下菜单程序:nn HOST: ********     USER: ****      DATE: **/**/20**nnA: 创建子目录并复制文件nnB: 文件权限测试nnC: 文件字符转换nnD: 文件总数及文本行...
关于普通用户不能在root目录下创建文件及目录的总结
初学linux,对root用户及普通用户的权限不太理解。实际上,一般情况下普通用户不能在root目录下创建文件及目录,因为没有权限,会提示“不能在XXX创建新文件”。普通用户要想在root下拥有创建新文件的权限,必须在拥有root用户的权限下,修改普通用户对root目录的权限后,才能创建新的文件。rn步骤如下:rn(1)获取root权限rn~$ surn密码:(此处输入root的密码)rn(2)第
Ubuntu在/etc/profile中配置好了Java环境,运行Java子命令无效问题(~/.bashrc等文件分析)
在一台虚拟Ubuntu设备上碰到一个奇怪问题,在/etc/profile中配置好了Java环境,运行Java子命令无效。。奇怪,这是什么原因呢?rn  不管他是什么原因,反正配置失败就让人很不舒服。。于是去虚拟机的jdk的bin目录下运行./java命令,没问题呀,有用的呢,这样就不太好了。于是仔细看看/etc/profile中有没有问题,还是没有问题呢!rn  不科学呀,去网上搜一波,网上都说是
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 产品经理适合培训吗 java适合新手学习吗