十三年专注于网站建设与互联网应用开发,低调、有情怀的网络应用服务商!
南昌百恒科技微信公众号 扫一扫关注
tel-icon全国服务热线:400-680-9298,0791-88117053
扫一扫关注百恒科技微信公众号

Linux系统中如何创建shell 脚本文件?

百恒 2017-08-04 16:07:03 4372
       懂linux编程的朋友都知道,要将shell命令放到文本文件中,首先需要用文本编辑器来创建一个文件,然后将命令输入到文件中。
       在创建shell脚本文件时,必须在文件的第一行指定要使用的shell。其格式为:#!/bin/bash
       在通常的shell脚本中,井号(#)用作注释行。shell并不会处理shell脚本中的注释行。然而,shell脚本文件的第一行是个例外,#后面的惊叹号会告诉shell用哪个shell来运行脚本。
       在指定了shell之后,就可以在文件的每一行中输入命令,然后加一个回车符。南昌网络公司小编之前提到过,注释可用#添加。例如:
       #!/bin/bash
       # This script displays the date and who's logged on
       date
       who
       这就是脚本的所有内容了。可以根据需要,使用分号将两个命令放在一行上,但在shell脚本中,你可以在独立的行中书写命令。shell会按根据命令在文件中出现的顺序进行处理。
       还有,要注意另有一行也以#开头,并添加了一个注释。shell不会解释以#开头的行(除了以#!开头的第一行)。留下注释来说明脚本做了什么,这种方法非常好。
       将这个脚本保存在名为test1的文件中,基本就好了。在运行新脚本前,还要做其他一些事。
       如果现在运行脚本,还为时尚早。
       $ test1
       bash: test1: command not found
       $
       你要跨过的第一个障碍是让bash shell能找到你的脚本文件。shell会通过PATH环境变量来查找命令。快速查看一下PATH环境变量就可以弄清问题所在。
       $ echo $PATH
       /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin
       :/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/user/bin $
       PATH环境变量被设置成只在一组目录中查找命令。要让shell找到test1脚本,只需采取以下两种作法之一:
       1、将shell脚本文件所处的目录添加到PATH环境变量中;
       2、在提示符中用绝对或相对文件路径来引用shell脚本文件。
       在这个例子中,我们将用第二种方式将脚本文件的确切位置告诉shell。为了引用当前目录下的文件,可以在shell中使用单点操作符。
       $ ./test1
       bash: ./test1: Permission denied
       $
       现在shell找到了脚本文件,但还有一个问题。shell指明了你还没有执行文件的权限。快速查看一下文件权限就能找到问题所在。
       $ ls -l test1-rw-rw-r-- 1 user user 73 Sep 24 19:56 test1
       $
       在创建test1文件时,umask的值决定了新文件的默认权限设置。由于umask变量在Ubuntu中被设成了022,所以系统创建的文件只有文件属主和属组才有读/写权限。
       下一步是通过chmod命令赋予文件属主执行文件的权限。
       $ chmod u+x test1
       $ ./test1
       Mon Feb 21 15:38:19 EST 2017
       Christine tty2 2017-02-21 15:26
       Samantha tty3 2017-02-21 15:26
       Timothy tty1 2017-02-21 15:26
       user tty7 2017-02-19 14:03 (:0)
       user pts/0 2017-02-21 15:21 (:0.0) $
       同上以上一系列操作,现在就万事俱备,只待执行新的shell脚本文件了。这就是创建shell 脚本文件的方法,是不是觉得很简单呢?如果对于这个知识点大家还有哪些疑问的话,随时可来电和我们联系。此外,想了解更多关于南昌网站建设、微信开发、APP开发等方面的资讯的朋友,欢迎关注百恒网络公司网站,你一定会有不一样的收获!
400-680-9298,0791-88117053
扫一扫关注百恒网络微信公众号

欢迎您的光顾,我们将竭诚为您服务×

售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售前咨询 售前咨询
 
售后服务 售后服务
 
备案专线 备案专线
 
售后服务 售后服务
 
×