linux打开执行命令,linux如何打开命令行
怎么在linux启动的时候执行一个命令?
有两种方式:一种方式是根据运行级别配置服务,一种方式是执行本地特殊配置。
创新互联公司-专业网站定制、快速模板网站建设、高性价比长葛网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式长葛网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖长葛地区。费用合理售后完善,10多年实体公司更值得信赖。
举例,任务是启动时运行命令cvslockd:
方式一:
1、 建立自启动脚本/etc/rc.d/init.d/cvslockd,内容为:
#!/bin/bash
/usr/local/bin/cvslockd
设置文件的属性为可执行:
#chmod +x /etc/rc.d/init.d/cvslockd
2、查看计算机运行级别,在文件/etc/inittab里看到id:5:initdefault:,则此系统运行级别为5;
3. 到/etc/rc5.d目录下,把你要执行的可执行文件做一个软连接,而且在命名的时候要以大写S字母开头,S之后的数字大小代表执行顺序的先后,数字越大越后执行。
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc5.d/S100cvslockd
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc0.d/K20cvslockd
方式二:
在/etc/rc.d/rc.local 添加 exec /usr/local/bin/cvslockd
该方式是在最后启动cvslockd。
linux shell脚本执行命令详解
在Linux下,如果你需要执行shell脚本,那么应该使用那个命令呢?下面由我为大家整理了linux shell脚本执行命令的相关知识,希望对大家有帮助!
linux shell脚本执行
linux shell脚本执行方法一: 切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:
cd /data/shell
./hello.sh
./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工作目录(/data/shell)可能不在执行程序默认的搜索路径之列,也就是说,不在环境变量PASH的内容之中。查看PATH的内容可用 echo $PASH 命令。现在的/data/shell就不在环境变量PASH中的,所以必须加上./才可执行。
linux shell脚本执行方法二: 以绝对路径的方式去执行bash shell脚本:
/data/shell/hello.sh
linux shell脚本执行方法三: 直接使用bash 或sh 来执行bash shell脚本:
cd /data/shell
bash hello.sh
或
cd /data/shell
sh hello.sh
注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。那么不用指定bash路径自然也好理解了啊。
linux shell脚本执行方法四: 在当前的shell环境中执行bash shell脚本:
cd /data/shell
. hello.sh
或
cd /data/shell
source hello.sh
前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。
linux开机自动执行命令和脚本 自动启动 自启 进程一直运行
原文及更新:
直接在/etc/rc.local(/etc/rc.d/rc.local)文件中添加即可
上面这脚本实际上在使用时出现了问题, /home/neucrack/software/ss/start_ss_local.sh 这个命令始终没有被执行,原因是 /home/neucrack/software/ss/start_kcptun_client.sh 中的命令阻塞了进程,导致后面一句始终没有执行,可以将他们分别放到后台执行就行了,如何在后台执行可以看文章最后一部分
也可以自己手动在rc*.d中建立软连接
桌面系统搜索 启动 ,打开启动管理器 添加删除即可
一般有以下几种方法:
1)在输入命令的最前面加上 nohup 命令
如 nohup your_command 这样命令在你退出后仍然会在后台执行
2) setsid 命令
setsid your_command 该命令的结果是使你所运行的命令的父进程为init,所以只有关机该进程才会停止
3) (your_command )
就是用括号将你的命令括起来,这样做也是使命令的父进程为init
4) disown
当你在命令行下输入 your_command 后命令就在后台执行了,然后执行jobs命令,该命令会列出当前正在后台执行的命令。例如输入命令“top”
然后执行"jobs"
输出结果是
[1] + Suspended (tty output) top
注意行开头方括号内的数字,该数字叫做jobspec,是给当前后台运行的job的编号。这是你只要在命令行下输入"disown -h 1" 后台运行的top命令就不会受到hangup信号的影响了。
5)使用 screen 命令
在命令行下输入screen命令就开启了一个screen进程,它就好像是一个全新的命令运行环境,在该环境中你可以像在正常的terminal下那样执行
命令,但是这个screen是不受其父进程的hangup信号的影响的,既然screen不受其父进程影响,当你意外掉线或者退出系统时,在screen
中仍在执行的命令仍然会继续执行。关于screen命令的使用方法你可以再去查阅相关资料。
分享文章:linux打开执行命令,linux如何打开命令行
本文地址:http://azwzsj.com/article/hogjcs.html