linux脚本如何一键授权并执行

linux脚本如何一键授权并执行,第1张

在当前路径下输入r chmod 777 脚本名r 给脚本授权,r 然后就可以执行脚本r ./脚本名 r r 777 是最高权限,有读、写、执行权限;和属组用户和其他用户的读、写、执行权限。r 其他权限分别是r -rw------- (600) -- 只有读写权限。r -rw-r--r-- (644) -- 只有有读写权限;而属组用户和其他用户只有读权限。r -rwx------ (700) -- 只有有读、写、执行权限。r -rwxr-xr-x (755) -- 有读、写、执行权限;而属组用户和其他用户只有读、执行权限。r -rwx--x--x (711) -- 有读、写、执行权限;而属组用户和其他用户只有执行权限。

Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法:

方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本

方法二:以绝对路径的方式去执行bash shell脚本

方法三:直接使用bash 或sh 来执行bash shell脚本

方法四:在当前的shell环境中执行bash shell脚本

Shell终端解释器形容是人与计算机硬件的“翻译官”,它作为用户与Linux系统内部通讯的媒介,除了允许了各种变量与参数外还提供了诸如循环、分支等高级语言才有的控制结构特性,如何正确的使用这些功能,准确下达命令就显得尤为重要。Shell中脚本命令的工作方式有两种,首先是咱们前面所接触的交互方式(Interactive),即当用户每输入一条命令就执行一次,而批处理(Batch)则是由用户事先编写好一个完整的Shell脚本,Shell会一次性执行脚本中诸多的命令。因此在Shell脚本中不仅需要用到很多前面学习过的Linux命令以及正则表达式、管道符、数据流重定向等语法规则,还需要将内部功能模块化后通过逻辑语句进行加工,最终才能成为咱们日常所见的Shell脚本程序。先来查看下系统中所有可用的Shell解释器:

[root@linuxprobe ~]# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

/bin/tcsh

/bin/csh

另外查看到bash已经是咱们目前的终端解释器了:

[root@linuxprobe ~]# echo $SHELL

/bin/bash

估计读者看完上面对Shell脚本如此复杂的描述都有一种心累想放弃的感觉了吧,但这仅指的是一个高深Shell脚本的编写原则,其实当咱们使用vim编辑器将linux命令按照顺序依次写入文件就是编写完成一个最简单的脚本啦。例如咱们想查看当前所在工作路径并列出当前目录下所有文件及属性信息,编写一个脚本来完成的话是这样:

[root@linuxprobe ~]# vim example.sh

#!/bin/bash

#For Example BY linuxprobe.com

pwd

ls -al

Shell脚本文件的名称是可以任意起,但为了避免其他同事误以为是普通文件,咱们应该符合运维行业人员大众的规范将.sh后缀写上,这样让其他人一看就知道是个脚本文件,与人方便自己方便。在这个脚本中实际上出现了三种不同的元素,第一行脚本声明(#!)是用来告知系统用何种shell解释器来执行本脚本程序,第二行注释信息(#)是对程序功能和某些命令的介绍信息,使得自己或他人再次看到这个脚本内容时可以快速知道这些功能的作用或一些警告信息,第三、四行可执行语句也就是咱们平时执行的Linux命令啦~什么?你不相信这么简单就编写出来了一个脚本程序,那咱们来执行看一看吧:

[root@linuxprobe ~]# bash example.sh

/root/Desktop

total 8

drwxr-xr-x. 2 root root 23 Jul 23 17:31 .

dr-xr-x---. 14 root root 4096 Jul 23 17:31 ..

-rwxr--r--. 1 root root 55 Jul 23 17:31 example.sh

第二种运行脚本程序的方法是以输入完整路径的方式来执行,但默认会因为权限不足而提示报错信息,这种情况只需要为脚本文件增加执行权限即可(在第五章会详细讲到):

[root@linuxprobe ~]# ./example.sh

bash: ./Example.sh: Permission denied

[root@linuxprobe ~]# chmod u+x example.sh

[root@linuxprobe ~]# ./example.sh

/root/Desktop

total 8

drwxr-xr-x. 2 root root 23 Jul 23 17:31 .

dr-xr-x---. 14 root root 4096 Jul 23 17:31 ..

-rwxr--r--. 1 root root 55 Jul 23 17:31 example.sh

这只是最简单的,你可以看下http://www.linuxprobe.com/chapter-04.html#42_Shell学习下shell脚本!

新建一个文件shell脚本一般用×.sh作为后缀当然勇气他的也可以。打开终端输入touch first.sh 新建一个名为first的shell脚本。

编写一个简单的linuxshell脚本

使用vim 编辑first.sh也可以用其他的文本编辑器,推荐使用vim

使用命令 vim first.sh打开,输入i进入编辑模式。

编写一个简单的linuxshell脚本

我们写入一个简单的shell脚本,注意第一行的代码解释器的指定,这里使用的是/bin/bash/ 解释器 也可用其他的根据个人情况自己选择。

脚本解释:

echo //显示一串字符并自动换行

read NAME //从屏幕获取一段字符,并赋予NAME

$NAME //取NAME变量的值

# //只用一个#表示注释文本

编写一个简单的linuxshell脚本

文件写完后按下esc键 退出插入模式,接着输入:wq 保存文本并退出文本编辑。

编写一个简单的linuxshell脚本

输入sh + 脚本名称 运行脚本,或给文件可运行权限 chmod +x 然后输入./first.sh运行脚本。

编写一个简单的linuxshell脚本

编写一个简单的linuxshell脚本


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8995732.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存