linux脚本中的?linux怎么编写shell脚本
linux中source命令详解
linux系统中source命令用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。下面是source命令内容的具体介绍:
1、source命令简介:
source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令,使Shell读入指定的Shell程序文件并依次执行文件中的所有语句,用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
2、语法:
source filename或. filename
3、source filename与 sh filename及./filename执行脚本的区别:
当shell脚本具有可执行权限时,用sh filename与./filename执行脚本是没有区别的。./filename是因为当前目录没有在PATH中,所有”.”是用来表示当前目录的。
sh filename重新建立一个子shell,在子shell中执行脚本里面的语句,该子shell继承父shell的环境变量,但子shell新建的、改变的变量不会被带回父shell,除非使用export。
source filename:这个命令其实只是简单地读取脚本里面的语句依次在当前shell里面执行,没有建立新的子shell。那么脚本里面所有新建、改变变量的语句都会保存在当前shell里面。
举例:
1.新建一个test.sh脚本,内容为:A=1
2.然后使其可执行chmod+x test.sh
3.运行sh test.sh后,echo$A,显示为空,因为A=1并未传回给当前shell
4.运行./test.sh后,也是一样的效果
5.运行source test.sh或者. test.sh,然后echo$A,则会显示1,说明A=1的变量在当前shell中
linux shell脚本执行命令
linux shell脚本执行命令主要有四种方式,具体介绍如下:
方式一:
切换到shell脚本所在的目录(也叫工作目录)执行shell脚本,具体代码是:
cd/data/shell
./hello.sh
方式二:
可以以绝对路径的方法去执行bash shell脚本,具体代码是:
/data/shell/hello.sh
方式三:
可以选择直接使用bash命令或者sh命令来执行bash shell脚本,具体代码是:
cd/data/shell
bash hello.sh
或者
cd/data/shell
sh hello.sh
方式四:
还可以选择在当前的shell环境中执行bash shell脚本,具体代码是:
cd/data/shell
. hello.sh
或
cd/data/shell
source hello.sh
说明:前三种方式执行shell脚本时都需要在当前shell(即父shell)开启的一个子shell环境中执行,完成之后就会关闭回到原来的shell中,但方式四是直接在当前的shell中执行的。
Linux中的./是什么意思
Linux中“./”在系统文件中表示绝对路径的意思。
linux系统中,所有的文件与目录都是由根目录/开始,不是以/开头的就是相对路径;
1、“.”表示当前目录,也可以用“./”表示;
2、“..”表示上一级目录,也可以用“../”表示;
3、“~”代表用户自己的宿主目录;
4、“/”处于Linux文件系统树形结构的最顶端,我们称它为Linux文件系统的root,它是Linux文件系统的入口。
所有的目录、文件、设备都在/之下,它是Linux文件系统最顶层的唯一的目录;
一般建议在根目录下面只有目录,不要直接存放文件;根目录是linux系统启动时系统第一个载入的分区,所以启动过程中用到的文件应该都放在这个分区中。
其中/etc、/bin、/dev、/lib、/sbin这5个子目录都应该要与根目录连在一起,不可独立成为某个分区。
扩展资料:
linux有四种基本文件系统类型:
1、普通文件:如文本文件、c语言源代码、shell脚本等,可以用cat、less、more、vi等来察看内容,用mv来改名;
2、目录文件:包括文件名、子目录名及其指针,可以用ls列出目录文件;
3、链接文件:是指向一索引节点的那些目录条目,用ls来查看时,链接文件的标志用l开头,而文件后以"->"指向所链接的文件;
4、特殊文件:如磁盘、终端、打印机等都在文件系统中表示出来,常放在/dev目录内;
可以用file命令来识别。