Linux终端执行shell脚本,提示权限不够的问题及解决

 更新时间:2024年01月11日 17:03:20   作者:嵌入式Linux系统开发  
这篇文章主要介绍了Linux终端执行shell脚本,提示权限不够的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Linux终端执行shell脚本,提示权限不够

今天在Linux尝试搭建dynamips的工作环境

在执行shell脚本时遇到个小问题

有一个名为start.sh的脚本文件

内容如下:

#!/bin/bash
./dynamips.bin -H 7200 &

在终端执行shell脚本后

出现问题如下:

[root]# ./start.sh
bash: ./start.sh: 权限不够

解决方法

是先使用chmod命令对shell脚本赋予权限

再执行

[root]# chmod 777 ./start.sh
[root]# ./start.sh

让你的shell在后台运行

pc帮助我们搬砖,总不能傻傻的等在terminal等着跑完吧。万一terminal

让进程后台运行

使用&可以让程序后台运行,比如我

for i in {1..10000}; do echo $i; sleep 1; done &

已经后台执行,我用ctrl+c也无法打断,因为进程已经在后台跑了

jobs查看当前终端后台运行

jobs只查询当前终端的运行程序

输出重定向

由于输入没有重定向,所以还是输出到当前的终端。

重定向输出到文件中。

for i in {1..10000}; do echo $i; sleep 1; done > my.log &

这样就不会在控制台输出呗干扰了

让进程不依赖当前shell运行

由于此后台运行的程序依赖当前shell,当我退出的时候,程序也推出了

都是由2666966这个进程带起来的

通过disown命令,把进程用不依赖当前terminal。

disown后,jobs已经是空的

nohub运行, nohup 和 & 的区别

为了避免我每次都到输入disown,如果能让进程启动时,就不跟随系统,可以使用nohub

nohup bash -c 'for i in {1..10000}; do echo $i; sleep 1; done ' > my.log  2>&1 &

这样运行的程序默认就是不依赖当前terminal的。

  • nohub : 应用程序不再和terminal关联,默认不会后台运行
  • &:后台运行

后台运行程序再次接入

在后台运行的程序,有时候想重新接入前台,使用fg(Foreground),可以拉起,但必须jobs是以看到进程的。

stopped程序重新唤醒

jobs可以看到的进程,使用bg重新拉起来

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • centos6.5配置ssh免秘钥登陆执行pssh命令的讲解

    centos6.5配置ssh免秘钥登陆执行pssh命令的讲解

    今天小编就为大家分享一篇关于centos6.5配置ssh免秘钥登陆执行pssh命令的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Linux回收站机制实现过程及用法详解

    Linux回收站机制实现过程及用法详解

    这篇文章主要介绍了Linux回收站机制实现过程及用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • CentOS7编译安装新版LNMP环境

    CentOS7编译安装新版LNMP环境

    本文给大家分享的是在最新版的centos系统中编译安装lnmp环境的详细步骤,非常的实用,推荐需要的小伙伴们参考下
    2016-10-10
  • 探究一个LED如何入门Linux内核

    探究一个LED如何入门Linux内核

    内核那么大,从哪看啊?能看懂吗?其实这种场景在脑海里不止一次地发生过了,兴趣和困难进行猛烈地撞击,意志力稍强,会有所突破,静下心来研究,可能会有所收获
    2021-08-08
  • Linux中出现“No space left on device”错误的排查与解决方法

    Linux中出现“No space left on device”错误的排查与解决方法

    这篇文章主要给大家介绍了关于在Linux中出现"No space left on device"错误的排查与解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-09-09
  • Linux之CRLF/CR/LF等回车换行符的问题

    Linux之CRLF/CR/LF等回车换行符的问题

    这篇文章主要介绍了Linux之CRLF/CR/LF等回车换行符的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • CentOS 最新版本git的安装教程

    CentOS 最新版本git的安装教程

    本文主要给大家介绍了CentOS 最新版本git的安装教程,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
    2016-11-11
  • linux上scp能不能取代rsync问题解读

    linux上scp能不能取代rsync问题解读

    文章对比了Linux系统中的scp和rsync两种文件传输工具,指出它们在核心功能、适用场景、选择条件等方面存在差异,文章强调,scp适合简单场景下的文件传输,而rsync则适用于频繁同步、大文件传输、保留元数据和复杂过滤等高级需求,因此,可以根据具体需求选择合适的工具
    2025-02-02
  • Centos6 网络配置的实例详解

    Centos6 网络配置的实例详解

    这篇文章主要介绍了Centos6 网络配置的实例详解的相关资料,希望通过本文大家能够掌握配置网络的知识,需要的朋友可以参考下
    2017-09-09
  • 详解在Ubuntu上的Apache配置SSL(https证书)的正确姿势

    详解在Ubuntu上的Apache配置SSL(https证书)的正确姿势

    这篇文章主要介绍了详解在Ubuntu上的Apache配置SSL(https证书)的正确姿势,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12

最新评论