精华内容
下载资源
问答
  • 今天在部署公司大数据上层服务的时候,发现自己...chmod是 Linux权限管理命令change the permissions mode of a file的缩写。 一、为所有 .sh 脚本添加执行权限 chmod u+x *.sh,表示对当前目录下的file.sh文件...

    Linux下sh文件执行权限不够,该怎么做

     

    今天在部署公司大数据上层服务的时候,发现自己的微服务脚本是白色的,汗,没法执行。原来是没有 .sh 的执行权限,用 chmod 授权下就可以了。

    Linux下sh文件执行权限不够,该怎么做

     

    chmod是 Linux 中权限管理命令change the permissions mode of a file的缩写。

    一、为所有 .sh 脚本添加执行权限

    chmod u+x *.sh,表示对当前目录下的file.sh文件的所有者增加可执行权限。

    1. u 代表所有者;
    2. x 代表执行权限;
    3. + 表示增加权限;
    4. *.sh 表示当前目录下所有 .sh 文件。

    二、为指定 .sh 脚本添加执行权限

    chmod u+x file1.sh,表示对当前目录下的 file1.sh 文件的所有者增加可执行权限。

    1. u 代表所有者;
    2. x 代表执行权限;
    3. + 表示增加权限;
    4. file1 表示指定的脚本文件。

    用以上两种方法授权后,在查看执行就可以啦。

    Linux下sh文件执行权限不够,该怎么做

     

    三、脚本执行异常

    异常信息:/bin/sh^M: bad interpreter: No such file or directory

    异常原因:是我们在 windows 下编写的脚本文件,直接放到 Linux 默认的是 dos 模式的文本,不被识别,需要处理下。

    解决办法:

    1、用 vim 打开脚本文件,在命令模式下输入:set ff=unix, 保存就可以了。

    2、在 windows下转换脚本格式,用 Notepad 改变文件格式即可。File-->Conversions-->DOS->UNIX。

    3、在 Linux 下新建一个 .sh 文件,然后复制粘贴过去也是可以的。

    展开全文
  • linux sh命令简述

    万次阅读 多人点赞 2020-07-03 18:00:52
    sh命令1. 可能需要的执行方式linux下执行.sh文件的方法2. 开头:#!/bin/sh3. 变量4. Shell命令和流程控制Unix命令概念:管道,重定向和backtick(反斜线)流程控制 1. 可能需要的执行方式 linux下执行.sh文件的方法 ...

    1. 可能需要的执行方式

    linux下执行.sh文件的方法

    .sh文件就是文本文件,如果要执行,需要使用chmod a+x xxx.sh来给可执行权限。

    2. 开头:#!/bin/sh

    shell程序必须以“#!/bin/sh”开始。shell中#一般表示注释的意思,所以很多时候认为"#!"也是注释,但实际上并不是。

    "#!/bin/sh"是对shell的声明,说明你所用的是哪种类型的shell及其路径所在。

    #!/bin/是指此脚本使用.bin/sh来执行。

    #!是特殊的表示符,其后面跟的是解释此脚本的shell的路径,如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本,如果脚本被编写为在Kornshell ksh中运行,而默认运行shell脚本的为C shell csh,则脚本在执行过程中很可能失败。所以建议大家就把"#!/bin/sh"当成C 语言的main函数一样,写shell必须有,以使shell程序更严密

    3. 变量

    在其他编程语言中必须使用变量。在shell编程中,所有变量都由字符串组成,并且不需要对变量进行声明。要赋值给一个变量,可以这样写:

    #!/bin/sh
     #对变量赋值:
     a=”hello world”
    # 现在打印变量a的内容:
     echo “A is:”
     echo $a
    

    有时候变量名很容易与其他文字混淆,比如:

     num=2
     echo “this is the $numnd

    这并不会打印出”this is the 2nd",而仅仅打印"this is the ",因为shell会去搜索变量numnd的值,但是这个变量是没有值的。因此,可以使用花括号来告诉shell我们要打印的是num变量:

     num=2
     echo “this is the ${num}nd”
    

    这样才会打印”this is the 2nd"

    4. Shell命令和流程控制

    在shell脚本中可以使用以下命令:

    Unix命令

    虽然在shell脚本中可以使用任意的unix命令,但还是有一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。
    如:

     echo "some text" #将文字内容打印在屏幕上
     ls #文件列表
     cp sourcefile destfile #文件拷贝
     mv oldname newname #重命名文件或移动文件
     rm file #删除文件
     grep 'pattern' file #在文件内搜索字符串,如:grep 'searchstring' file.txt
     cat file.txt #输出文件内容到标准输出设备(屏幕)上
     read var #显示用户输入,并将输入赋值给变量
    

    概念:管道,重定向和backtick(反斜线)

    管道“|”将一个命令的输出作为另外一个命令的输入。

    grep "hello" file.txt | wc -l
    

    上述代码表示为:在file.txt中搜索包含有“hello”的行并计算其行数。在这里grep命令的输出作为wc命令的输入。

    重定向:将命令的结果输出到文件,而不是标准输出(屏幕)。
    >写入文件并覆盖旧文件
    >>追加到文件的尾部,保留旧文件内容。

    反短横线"`":使用反短横线可以将一个命令的输出作为另一个命令的一个命令行参数

     find . -mtime  -1  -type  f  -print
    

    上述语句用来查找过去24小时(-mtime -2则表示过去48小时)内修改过的文件。如果想将所有查找到的文件打一个包,则可以使用一下linux脚本:

     #!/bin/sh
     # The ticks are backticks (`) not normal quotes (‘):
     tar -zcvf  lastmod.tar.gz `find . -mtime -1 -type f -print`
    

    流程控制

    if
    "if"表达式,如果条件为真则执行then后面的部分:

     if ….; then
     ….
     elif ….; then
     ….
     else
     ….
     fi #注意是以fi结尾
    

    大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件时都存在以及是否可读等等

    测试条件
    通常使用"[ ]"来表示测试条件。注意这里的空格很重要,要确保方括号里的空格

     [ -f "somefile" ] #判断文件是否存在
     [ -d "testResults/" ] #判断目录testResults/是否存在
     [ -x "/bin/ls" ] #判断/bin/ls文件是否存在并有可执行权限
     [ -n "$var" ] #判断$var变量是否有值
     [ "$a" = "$b" ] #判断$a和$b是否相等
    

    快捷操作符
    熟悉C语言可能会喜欢一下表达式:

      [ -f "/etc/shadow" ] && echo “This computer uses shadow passwors”
    

    这里"&&"就是一个快捷操作符,如果左边的表达式为真则执行右边的语句。当然也可以将上述表达式认为是逻辑运算中的与操作。

    同样或操作"||"在shell编程中也是可用的:

     #!/bin/sh
     mailfolder=/var/spool/mail/james
     [ -r "$mailfolder" ]‘ ‘{ echo “Can not read $mailfolder; exit 1; } #感觉这里的‘’应该是||
     echo$mailfolder has mail from:”
     grep “^From ” $mailfolder
    

    该脚本首先判断mailfolder是否可读。如果可读则打印该文件中的”From” 一行。如果不可读则或操作生效,打印错误信息后脚本退出。这里有个问题,那就是我们必须有两个命令:
    ◆打印错误信息
    ◆退出程序
    我们使用花括号以匿名函数的形式将两个命令放到一起作为一个命令使用。一般函数将在下文提及。
    不用‘与’和‘或’操作符,我们也可以用if表达式作任何事情,但是使用与或操作符会更便利很多。

    展开全文
  • 主要介绍了Linux常用命令之chmod修改文件权限777和754,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • Linux服务器运行sh文件提示权限不够解决方法?飞腾服务器Permission denied问题授权方法。 权限不够解决办法, 通过 chmod -R +x ../bin 命令重新进一次该文件夹就好了就好了,bin 就代表当前文件夹。 然后又发现了 ...

    权限不够解决办法, 通过 chmod -R +x ../bin 命令重新进一次该文件夹就好了就好了,bin 就代表当前文件夹。

    root@compute9:/data/nccode/0520DM/bin# ./sysConfig.sh
    -bash: ./sysConfig.sh: 权限不够
    root@compute9:/data/nccode/0520DM/bin# chmod -R +x ../bin
    root@compute9:/data/nccode/0520DM/bin# ./sysConfig.sh
    

    然后又发现了 Permission denied 问题。
    在这里插入图片描述
    通过 ll 命令可以看到大多数文件名都是白色的,这就表示没有授权,使用授权语句 chmod -R 755 * 来对该目录进行授权。
    在这里插入图片描述
    授权完变成绿色就能用了,然后再执行那个语句就不会报错了。
    在这里插入图片描述
    喜欢的点个赞❤吧!

    展开全文
  • app.sh 是java将jar安装成linux服务安装命令脚本 脚本使用方式 : 1-改好配置文件 2-将app.sh 与 jar 放置一个文件夹 3-给与app.sh相应执行权限,chmod 777 app.sh 4-启动 ./app.sh start
  • linux执行“.sh”文件提示:权限不够

    万次阅读 热门讨论 2018-09-25 11:51:28
    小编时初学者,也不知道具体什么原因导致的,只知道对该路径下的文件(.sh)设置权限就可以。 chmod +x 需要执行的.sh文件路径

    小编时初学者,也不知道具体什么原因导致的,只知道对该路径下的文件(.sh)设置权限就可以。

    chmod +x 需要执行的.sh文件路径
    
    展开全文
  • Linuxsh脚本文件添加执行权限

    千次阅读 2021-01-07 17:37:09
    Linuxsh脚本文件添加执行权限 chmod是权限管理命令change the permissions mode of a file的缩写。。 u代表所有者,x代表执行权限。 + 表示增加权限。 chmod u+x file.sh 就表示对当前目录下的file.sh文件的所有...
  • 终端执行命令: chmod +x ***.sh即可.
  • 因为这个是将test.sh作为参数传给sh(bash)命令来执行的。这时不是test.sh自己来执行,而是被人家调用执行,所以不要执行权限。 [root@iz2ze720onwdpm0gqiky35z 51mn]# ls -lrt test.sh -r--r--r-- 1 root root 22...
  • Linux使用 echo 并配合命令重定向是实现向文件中写入信息的快捷方式。 【新建空文件】 方式一 : $ touch test.sh 方式二 : $ echo “” > test.sh 【写内容到文件】 如 test.sh 文件中内容: $ echo “信息” &...
  • nohup: 无法运行命令"./startup.sh": 权限不够 注: 博客:https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 这是因为权限不够,首先...
  • 比如我写了一个lc.sh的shell脚本,现在我执行它 出现了权限不够的提示。 解决方法: chmod 777 ./lc.sh 或者 chmod +x ./lc.sh 然后再执行这个脚本 ./lc.sh 执行成功!
  • 这几天的工作中一直会重启tomcat,一直是手动查询PID,kill -9 ,然后重启,比较...结果脚本完成后无法使用./xxx.sh的方式调用。查询后得知是因为创建的文件默认是没有X的权限的。贴图记录,方便自己查看 ...
  • 今天在linux中部署java项目,有一个需要备份达梦数据库的功能,备份达梦数据库使用... 遇到问题:同过java的 Runtime.getRuntime().exec(),执行linux命令 失败 String command = " eacho a "; String[] comman...
  • Linux如何授权sh脚本的执行权限

    千次阅读 2021-04-14 14:57:49
    1 为所有 .sh 脚本添加执行权限 chmod u+x *.sh,表示对当前目录下的file.sh文件的所有者增加可执行权限。 u 代表所有者; x 代表执行权限; 表示增加权限。 2 为指定 .sh 脚本添加执行权限 chmod u+x file1.sh,...
  • Linux下面用命令如何运行.sh文件的方法 直接./加上文件名.sh,如运行hello.sh为./hello.sh【hello.sh必须有x权限】 直接sh 加上文件名.sh,如运行hello.shsh hello.sh【hello.sh可以没有x权限】 赋权限命令:...
  • Linux:.sh文件的格式及权限管理

    千次阅读 2020-01-08 16:49:19
    问题场景 ...从上述报错中我们可以看到,报错原因是“$’\r’: command not found”,也就是发现了未知的“/r”命令。 我们用vim打开dist_bash.sh文件,发现其为"dos"格式: 而我们在Linux下应该使用...
  • Linux系统下给.sh添加可执行权限并运行 1、添加可执行权限 chmod u+x xxx.sh 解释: chmod(change the permissions mode of a file)是权限管理命令。 u代表所有者,x代表执行权限。 + 表示增加权限 "xxx"表示你的...
  • -bash: ./startup.bat: 权限不够解决办法:用命令chmod 修改bin目录下的.sh权限执行chmod u+x *.sh即可
  • linux权限不够sh不能用

    千次阅读 2016-04-08 13:47:00
    linux权限不够 chmod +x 脚本命令 ./脚本命令 即可。。。       sh startup.sh启动tomcat,出现 This file is needed to run this program    chmod +x *.sh再次执行 sh startup.sh成功启动...
  • 在学习dubbo过程中,上传自己写的脚本,执行的时候提示“权限不够”,从网上了解到是因为没有为脚本赋权限 解决方法是使用chmod命令为shell脚本赋予权限 chmod 777 ./service-demo.sh 参考:...
  • jar在linux下发布运行(.sh 命令

    千次阅读 2019-11-27 18:04:51
    一、打包生成jar,并将jar...test.sh 中包括 启动、关闭、重启,查看jar状态命令:具体内容如下: #!/bin/bash #进入当前目录 并自动或jar包 cd `dirname $0` APP_HOME=`pwd` APP_NAME="`cd ${APP_HOME} &&...
  • 给.sh文件添加执行权限linux

    千次阅读 2021-02-07 11:52:38
    chmod是权限管理命令change the permissions mode of a file的缩写。。 u代表所有者,x代表执行权限。 + 表示增加权限。 chmod u+x file.sh 就表示对当前目录下的file.sh文件的所有者增加可执行权限
  • Jenkins执行linux脚本提示权限不够

    千次阅读 2019-12-23 20:05:26
    Jenkins执行linux脚本提示权限不够 今天在用jenkins部署项目的时候,在项目构建前要停掉前面部署的项目端口,不然构建后运行不了新的项目。我在构建前创建了stop.sh,并赋权限,chmod u x stop.sh. 问题 一切准备...
  • 在某天之前,我运行Linux下的.sh文件,都是采用./xxx.sh的方式。 突然有一天,我发现这个方式运行不了了。。。提示我 然后,我才知道,原来文件夹还是有权限的。。。 所以,请教了一下公司大神,并总结如下: ...
  • 本文介绍Linux下面用命令如何运行.sh文件的方法,有两种方法: 一、直接./加上文件名.sh,如运行hello.sh为./hello.sh【hello.sh必须有x权限】 二、直接sh 加上文件名.sh,如运行hello.shsh hello.sh【hello.sh...
  • Linux常用命令

    万次阅读 多人点赞 2018-11-08 11:49:23
    一、基本命令 1.1 关机和重启 1.2 帮助命令 二、目录操作命令 2.1 目录切换 cd 2.2 目录查看 ls [-al] 2.3 目录操作【增,删,改,查】 2.3.1创建目录【增】 mkdir 2.3.2删除目录或文件【删】rm 2.3.3目录...
  • 问题描述: 在使用Ubuntu系统的时候,遇到.../usr/local/nginx/html/index.html命令的时候,提示权限不够。 虽然知道echo命令是属于root用户的权限,但是我之前一直以为加个sudo就能够获取到root的全部权限,...
  • 在* nix上,可以使用chmod +x file.sh来使.sh文件可执行。 终奌站 $ ls -lsah total 12K 4.0K drwxr-xr-x 2 mkyong mkyong 4.0K Feb 5 10:24 . 4.0K drwxr-xr-x 17 mkyong mkyong 4.0K Feb 5 10:24 .. 4.0K -rw-...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 161,768
精华内容 64,707
关键字:

linuxsh命令权限不够

linux 订阅