Shell命令
Shell命令大全
Shell命令⼤全⼀、Linux下常⽤命令:⽂件与⽬录操作
basename:从⽂件名中去掉路径和扩展名
cd:切换当前⼯作⽬录到指定⽬录
chgrp:改变⽂件所属组
chmod:改变⽂件的权限
chown:改变⽂件的所有者和组
cp:复制⽂件或⽬录
dd:复制⽂件并转换⽂件内容
file:确定⽂件类型
find:在指定⽬录下查找⽂件并执⾏指定的操作
ln:创建⽂件链接
locate/slocate:快速定位⽂件的路径
ls/dir/vdir:显⽰⽬录内容
mkdir:创建⽬录
mv:移动或重命名⽂件
pwd:显⽰当前⼯作⽬录
rename:重命名⽂件
rm:删除⽂件或⽬录
rmdir:删除空⽬录
touch:修改⽂件的时间属性
updatedb:创建或更新slocate数据库
whereis:显⽰指令程序、源代码和man⼿册页
which:显⽰指令的绝对路径
⼆、Linux下常⽤命令:备份与压缩
ar:创建、修改归档⽂件和从归档⽂件中提取⽂件
arj:.arj⽂件压缩指令
bunzip2:压缩bzip2格式的压缩⽂件
bzcat:解压缩⽂件到标准输出
bzip2:创建.bz2格式的压缩⽂件
bzip2recover:修复损坏的.bz2⽂件
bzless/bzmore:解压缩.bz2⽂件并分屏显⽰内容
compress:压缩数据⽂件
cpio:存取归档包中的⽂件
dump:⽂件系统备份
gunzip:解压缩由gzip压缩的⽂件
gzexe:压缩可执⾏程序
gzip:GNU的压缩和解压缩⼯具
lha:压缩和解压缩指令
resotre:还原由dump备份的⽂件或⽂件系统
shell语法 ;
在Shell脚本中,分号(;)用于分隔命令。在大多数Shell环境中,分号的作用类似于换行符,可以将多个命令写在同一行上。使用分号可以将多个命令链接在一起,使它们在同一个Shell会话中依次执行。
以下是一个使用分号的Shell脚本示例:
```bash
echo "Hello"; echo "World"
```
在上面的示例中,两个echo命令之间使用分号分隔。当脚本执行时,它会先执行第一个echo命令输出"Hello",然后执行第二个echo命令输出"World"。
除了分号,还有其他几种方式可以分隔Shell命令:
1. 换行符:每个命令占据一行,这是最常见的分隔方式。
2. 管道符(|):将一个命令的输出作为另一个命令的输入。
3. 逻辑运算符(&& 和 ||):用于控制命令的执行顺序。&& 表示前一个命令成功执行后才执行后一个命令,|| 表示前一个命令失败时才执行后一个命令。
需要注意的是,分号用于分隔命令,而不是连接命令。如果需要将多个命令的输出连接在一起,可以使用输出重定向(>),或者使用命令替换($(command))。
shell 命令的返回值
shell 命令的返回值
摘要:
I.引言
- 介绍shell 命令
- 阐述shell 命令返回值的重要性
II.shell 命令返回值的概念与作用
- 返回值的概念
- 返回值的作用
- 返回值的类型
III.shell 命令返回值的获取与处理
- 获取返回值的方法
- 处理返回值的方式
- 返回值的判断与分支
IV.常见shell 命令的返回值
- 举例说明常见shell 命令的返回值
- 分析各命令返回值的意义与作用
V.总结
- 回顾shell 命令返回值的重要性
- 强调正确处理返回值以保证命令的正确执行正文:
I.引言
Shell 命令是在操作系统中用于执行特定任务的一组指令。它们可以用于管理文件、目录、用户和系统设置等。然而,在这些命令执行过程中,可能会产生一些返回值,这些返回值对于理解命令执行情况和进行后续操作具有重要意义。本文将详细介绍shell 命令的返回值及其获取与处理方法。
II.shell 命令返回值的概念与作用
首先,我们需要了解shell 命令返回值的概念。在shell 命令执行过程中,可能会产生成功(0)或失败(非0)两种结果。这些结果被称为返回值。返回值可以用来判断命令是否执行成功,从而采取相应的措施。例如,如果一个命令返回值为0,则表示命令执行成功;如果返回值非0,则表示命令执行失败,可以进行相应的错误处理。
III.shell 命令返回值的获取与处理
获取shell 命令返回值的方法通常是通过将命令输出重定向到某个变量,然后检查该变量的值。例如,在bash 脚本中,可以使用以下方法获取命令返回值:
shell命令参数
shell命令参数
Shell命令参数是指在执行Shell命令时,可以传递给命令的附加信息。通过命令参数,我们可以改变命令的行为、指定命令的输入输出、调
整命令的执行方式等。下面是一些常用的Shell命令参数的详细介绍:
1. 选项参数(Options):选项参数以"-"符号开头,用于设置命令
的一些特定选项。例如,常见的选项参数有"-l"(显示详细信息)、"-a"(显示隐藏文件)、"-r"(逆向排序)等。
2. 位置参数(Positional Parameters):位置参数是指在命令中没
有以选项形式出现的参数,通常是命令操作的对象或操作数。例如,在"cp file1 file2"命令中,"file1"和"file2"就是位置参数。
3. 环境变量(Environment Variables):环境变量是由Shell设置
和维护的,用于控制命令行工具的行为。通过修改环境变量,可以改变命
令的默认行为和输出结果。例如,"PATH"环境变量指定了Shell可执行文
件的路径。
4. 通配符参数(Wildcard Parameters):通配符参数用于匹配文件名。常用的通配符有"*"(匹配任意字符)、"?"(匹配单个字符)、"[]"(匹配字符集合)等。例如,"ls *.txt"命令可以列出当前目录下所有以".txt"结尾的文件。
6. 标准输出参数(Standard Output):标准输出参数指定了命令的
输出目标。通过重定向符号">",可以将命令的输出保存到文件中。例如,"ls > output.txt"命令可以将"ls"命令的输出保存到"output.txt"文件中。
shell手册
shell手册
Shell手册旨在为Shell的使用者提供详细的指导和参考,帮助他们更好地理解和使用Shell。以下是Shell手册的主要内容:
一、介绍
Shell是操作系统的一部分,负责解释和执行用户输入的命令。在Linux和Unix系统中,常见的Shell有Bash、Csh、Ksh等。Shell通过调用操作系统提供的函数和工具,执行各种操作,如文件管理、进程控制、环境变量设置等。
二、Shell的基础知识
1. 命令行语法:介绍Shell的命令行语法,包括命令的格式、参数传递、输入输出重定向等。
2. 变量和环境变量:介绍如何在Shell中定义和使用变量,以及如何设置和获取环境变量。
3. 命令和函数:介绍如何在Shell中定义和使用命令和函数,以及如何编写可重用的代码块。
4. 流程控制:介绍如何在Shell中进行条件判断和循环控制,包括if语句、while循环、for循环等。
5. 文件和目录操作:介绍如何在Shell中进行文件和目录的操作,包括文件的创建、删除、移动、复制等,以及目录的创建、删除、查找等。
6. 进程管理:介绍如何在Shell中管理进程,包括进程的创建、停止、查看等。
7. 调试和错误处理:介绍如何在Shell中进行调试和错误处理,包括使用echo、trap等命令进行调试,以及使用try/catch/finally进行错误处理。
三、Shell的高级特性
1. 通配符和正则表达式:介绍如何在Shell中使用通配符和正则表达式进行模式匹配和文本处理。
2. 参数扩展:介绍如何在Shell中进行参数扩展,包括字符串操作、数组操作、数字计算等。
shell编程基础知识点
shell编程基础知识点
一、Shell 编程基础知识
1、什么是 Shell
Shell 是一种用户使用的解释型程序,它是操作系统的一部分,派生自多种不同的系统。它是一种命令解释器,它可以读取用户的输入,解释该输入,并执行相应的命令。
Linux 的 Shell 有很多种,如 bash,csh,ksh 等。
2、Shell 的特性
(1) 交互式:用户可以通过 Shell 的界面实现与计算机的交互,以便用户和计算机之间的信息交换。
(2) 自动化:Shell 可以将用户编写的一系列命令,保存为脚本,并在需要的时候自动执行,以减少用户的工作量。
(3) 扩展性:Shell 可以实现过滤和管道功能,可以与其他应用程序和编程语言结合使用,实现不同应用程序、不同编程语言之间的信息传递。
3、Shell 命令
(1)ls : 列出目录内容。
(2)cd : 改变目录。
(3)pwd : 显示当前所在目录。
(4)mkdir : 创建目录。
(5)rm : 删除文件或目录。
(6)cat : 显示文件内容。
(7)echo : 向屏幕输出指定字符串。(8)exit : 退出当前 shell 环境。(9)man : 查看指定命令的帮助文档。(10)chmod : 改变文件权限。
sh命令的用法
sh命令是Shell命令的简称,用于在Unix和类Unix操作系统上执行命令。它是一种解释性语言,通过读取命令并将其传递给操作系统来执行。以下是一些常见的sh命令用法:
运行脚本文件:通过sh命令可以运行Shell脚本文件。语法如下:
php
sh <脚本文件名>
例如,要运行名为"script.sh"的脚本文件,可以使用以下命令:
bash
sh script.sh
执行命令:sh命令可以用来执行任何在Shell中可用的命令。语法如下:
php
sh -c <命令>
例如,要在当前Shell中打印"Hello World!",可以使用以下命令:
bash
sh -c "echo Hello World!"
交互模式:通过使用-i选项,可以让sh命令进入交互模式。这将打开一个Shell提示符,允许用户交互式地输入命令。语法如下:
bash
sh -i
脚本中调用命令:在Shell脚本中,可以使用sh命令来调用其他Shell命令或脚本。语法如下:
php
sh <命令或脚本> <参数>
例如,要在脚本中调用另一个脚本,可以使用以下语法:
bash
sh another_script.sh arg1 arg2
这些是sh命令的一些常见用法。
shell执行方法
shell执行方法
Shell是一种命令行解释器,也是一种编程语言,可以用于执行各种系统命令和自定义脚本。本文将介绍一些常用的Shell执行方法,包括条件判断、循环、函数定义等。
一、条件判断
在Shell中,可以使用if语句进行条件判断。if语句的基本语法如下:
```shell
if [ 条件 ]; then
# 条件为真时执行的语句
else
# 条件为假时执行的语句
fi
```
其中,条件可以是各种比较操作符,如等于(==)、不等于(!=)、大于(>)、小于(<)等。下面是一个示例:
```shell
if [ $num -gt 10 ]; then
echo "数字大于10"
echo "数字小于等于10"
fi
```
二、循环
在Shell中,可以使用for循环和while循环来重复执行一段代码。
1. for循环
for循环用于遍历一个列表或者按照指定的步长进行循环。基本语法如下:
```shell
for 变量 in 列表; do
# 循环体
done
```
下面是一个示例,用于输出1到10的数字:
```shell
for i in 1 2 3 4 5 6 7 8 9 10; do
echo $i
```
2. while循环
while循环在满足条件的情况下重复执行一段代码。基本语法如下:
```shell
while 条件; do
# 循环体
done
```
下面是一个示例,用于计算1到100的和:
```shell
sum=0
i=1
while [ $i -le 100 ]; do
sum=$((sum + i))
i=$((i + 1))
shell 最简单的阻塞命令
shell 最简单的阻塞命令
摘要:
1.介绍Shell 命令
2.阻塞命令的概念
3.最简单的阻塞命令:sleep 命令
4.sleep 命令的使用方法和参数
5.总结
正文:
Shell 是Linux 和Unix 系统中的一种命令解释器,它能够执行各种命令和程序。在Shell 中,阻塞命令是指执行该命令后,Shell 进程会暂停执行其他命令,直到该阻塞命令完成。今天我们将介绍最简单的阻塞命令:sleep 命令。
sleep 命令的作用是让当前Shell 进程暂停执行一段时间。它的基本语法是:
```
sleep <时间>
```
其中,`<时间>` 是一个表示时间的数值,可以是秒、分钟、小时等。例如,要暂停5 秒钟,可以使用以下命令:
```
sleep 5
```
此外,sleep 命令还支持使用可选的`-` 和`+` 参数来表示负数和正数时间。例如:
```
sleep -5 # 暂停5 秒(相当于不输入任何参数)
sleep +5 # 暂停5 秒
sleep -10 # 暂停10 秒
sleep +10 # 暂停10 秒
```
需要注意的是,sleep 命令不会输出任何信息,它只是暂停Shell 进程的执行。因此,在使用sleep 命令时,建议在命令行中添加`echo` 命令来显示当前的暂停状态,例如:
```
echo "暂停中,请等待..."
sleep 5
echo "暂停结束,继续执行..."
```
总之,sleep 命令是Shell 中最简单的阻塞命令,它可以让当前Shell 进程暂停执行一段时间。通过指定不同的时间参数,我们可以控制暂停的时间长度。
shell命令的返回值
shell命令的返回值
摘要:
1. Shell命令概述
2.返回值的概念和用途
3.常见Shell命令返回值及其含义
4.影响Shell命令返回值的因素
5.如何处理不同返回值的Shell命令
6.总结
正文:
## 1.Shell命令概述
Shell命令是操作系统中用于执行特定任务的命令。它们通常用于控制操作系统、执行程序和操作文件。Shell命令可以分为两类:内置命令和用户自定义命令。内置命令直接与操作系统交互,而用户自定义命令是根据用户的需求编写的。
## 2.返回值的概念和用途
返回值是Shell命令执行后产生的结果。它是一个整数,表示命令执行的成功与否以及执行过程中的详细信息。返回值的范围通常为0-255。0表示命令执行成功,非0表示命令执行失败或发生错误。
## 3.常见Shell命令返回值及其含义
- `ls`:列出目录内容。返回0表示成功,非0表示目录不存在或权限不足。
- `cp`:复制文件或目录。返回0表示成功,非0表示文件或目录不存在、权限不足或复制过程中发生错误。
- `rm`:删除文件或目录。返回0表示成功,非0表示文件或目录不存在、权限不足或删除过程中发生错误。
- `mkdir`:创建目录。返回0表示成功,非0表示目录创建失败。
## 4.影响Shell命令返回值的因素
- 命令本身的正确性:正确的命令通常返回0,错误的命令返回非0值。
- 文件和目录权限:若执行命令的用户没有足够的权限,可能导致命令返回非0值。
- 操作系统限制:某些命令在特定操作系统中可能具有不同的返回值。
## 5.如何处理不同返回值的Shell命令
shell 标准输入 命令行参数
shell 标准输入命令行参数
Shell 标准输入主要来自命令行参数,具体如下:
1.命令行参数:Shell脚本接收命令行参数的最基本方法是使用位置参数。位置参数允许在运行脚本时向命令行添加数据。例如,0是程序
名,1是第一个参数,2是第二个参数,依次类推,直到第9个参数9。当然,位置参数不仅仅支持9个参数,如果需要支持多余9个的位置参数,可以在变量数字周围加上花括号。
2.特殊参数变量:特殊参数变量包括0、#、∗、@等。其中,#表示传递给脚本或函数的参数个数;*表示传递给脚本或函数的所有参数;$@
表示传递给脚本或函数的所有参数。
以上内容仅供参考,如需更多信息,建议查阅相关文档或咨询专业人士。
linux shell命令参数
在Linux shell中,命令参数可以分为命令选项(option)和命令参数(arguments)。
命令选项是包括一个或多个字母的代码,它前面有一个减号,用于改变命令执行的动作的类型。比如,ls命令的-l选项,它会为每个文件列出一行信息,诸如数据大小和数据最后被修改的时间。
命令参数是传递给命令的输入值,可以是文件、目录等等。比如,cp命令的参数可以包括要复制的文件或目录的路径。
在Linux shell中,命令行中的每个字必须由空格或TAB隔开。例如:$ ls -l total 2 -rw-r--r-- 2 wzh book 22 Apr 20 20:37 motd -rw-r--r-- 2 wzh book 796 Apr 20 20:37 passwd $。
以上信息仅供参考,可以查阅相关的Linux shell命令的文档,以获取更全面的信息。
linux shell详解
linux shell详解
Linux Shell 是一种运行在 Linux 操作系统上的命令行解释器,它提供了一种与系统进行交互的方式。本文将详细介绍Linux Shell 的相关知识,包括 Shell 的基本概念、常用命令以及一些实用技巧。
## 一、Shell 的基本概念
Shell 是用户与操作系统内核之间的接口,它接收用户输入的命令,并将其转发给内核执行。在Linux 中,常见的Shell 有Bash (Bourne Again Shell)、Csh(C Shell)等。Bash 是最常用的Shell,也是默认的 Shell。
Shell 的主要功能包括命令解析与执行、环境控制、脚本编程等。用户可以通过Shell 提供的命令来执行文件操作、进程管理、权限控制等操作。
## 二、常用 Shell 命令
1. 目录操作命令:
- `ls`:列出当前目录下的文件和子目录。
- `cd`:切换当前工作目录。
- `pwd`:显示当前工作目录的路径。
2. 文件操作命令:
- `cp`:复制文件或目录。
- `mv`:移动文件或目录。
- `rm`:删除文件或目录。
- `cat`:查看文件内容。
3. 进程管理命令:
- `ps`:显示当前正在运行的进程。
- `top`:实时显示进程状态。
- `kill`:终止指定进程。
4. 网络命令:
- `ping`:测试与指定主机的连通性。
- `ifconfig`:查看和配置网络接口信息。
- `ssh`:远程登录到其他主机。
5. 权限管理命令:
- `chmod`:修改文件或目录的权限。
shell查看文件内容的命令
shell查看文件内容的命令
在Linux系统中,shell是一种强大的命令行解释器,可以用来执行各种任务,包括查看文件内容。下面是一些常用的shell命令,可以帮助你查看文件内容:
1. cat命令:cat命令是一种用于连接文件并输出到标准输出的工具。可以将一个或多个文件的内容输出到屏幕,例如:
```
cat file1.txt file2.txt
```
2. less命令:less命令是一种文件查看器,它可以按页浏览文件内容。可以使用less命令查看长文件,例如:
```
less longfile.txt
```
3. head命令:head命令是一种用于显示文件头部的工具。默认情况下,它会显示文件的前10行。例如:
```
head file.txt
```
4. tail命令:tail命令是一种用于显示文件尾部的工具。默认情况下,它会显示文件的后10行。例如:
```
tail file.txt
```
5. grep命令:grep命令是一种用于在文件中搜索指定模式的工具。可以使用grep命令查找包含指定关键字的行,例如:
```
grep keyword file.txt
```
6. awk命令:awk命令是一种文本处理工具,可以用于提取和处理文本数据。可以使用awk命令查找并提取指定模式的数据,例如: ```
awk '/pattern/ {print}' file.txt
```
以上这些命令在Linux系统中都是非常常用的,可以帮助你快速查看文件内容并处理数据。
常用的shell指令
常用的shell指令
常用的Shell指令
Shell指令是操作系统中的命令解释器,它用于执行用户输入的命令并与操作系统进行交互。在Linux和Unix系统中,Shell指令是用户与操作系统交互的主要方式。下面将介绍一些常用的Shell指令,包括文件和目录操作、系统管理、进程管理等。
一、文件和目录操作
1. ls:列出目录中的文件和子目录。可以使用不同的选项来控制所显示的信息,如-l选项可以显示详细的文件信息。
2. cd:改变当前工作目录。可以使用相对路径或绝对路径来指定目标目录。
3. pwd:显示当前工作目录的路径。
4. mkdir:创建一个新的目录。可以使用-p选项来创建多级目录。
5. cp:复制文件或目录。可以使用-r选项来复制目录及其子目录。
6. mv:移动文件或目录,也可以用来重命名文件或目录。
7. rm:删除文件或目录。可以使用-r选项来删除目录及其子目录。
8. touch:创建一个空文件或更新文件的访问和修改时间。
9. cat:将文件的内容输出到终端。
二、系统管理
1. ps:显示当前运行的进程列表。
2. top:实时显示系统的资源使用情况和进程信息。
3. df:显示磁盘分区的使用情况。
4. du:计算文件或目录的磁盘使用情况。
5. uname:显示操作系统的信息。
6. ifconfig:显示和配置网络接口的信息。
7. ping:向指定的主机发送ICMP回应请求。
8. netstat:显示网络连接、路由表和网络接口统计信息。
9. ssh:远程登录到其他计算机。
10. scp:在本地和远程计算机之间复制文件。
shell 命令参数
Shell命令参数是Shell脚本编程中非常重要的一部分,它们为脚本提供了外部输入和动态行为的能力。以下是Shell命令参数的详细介绍:
1. 位置参数:
- $0:脚本名称。
- $1 - $9:脚本的第一到第九个参数。
- $#:传递给脚本的参数个数。
- $*:所有位置参数的单个字符串。
- $@:所有位置参数的单独引用字符串。
2. 特殊参数:
- $?:最后一条命令的退出状态。
- $!:最后一个后台命令的进程ID。
3. 环境变量:
- $HOME:用户主目录。
- $PATH:执行命令时要搜索的目录列表。
- $PWD:当前工作目录。
- $USER:当前登录的用户名。
4. 逻辑运算符:
--a:逻辑与。
--o:逻辑或。
- !:逻辑非。
5. 条件测试命令:
- test:用于测试条件。
- [ ]:与test命令功能相同,用于测试条件。
--n:字符串不为空。
--z:字符串为空。
--eq:等于。
--ne:不等于。
--gt:大于。
--lt:小于。
--ge:大于等于。
--le:小于等于。
6. 文件测试命令:
--f:测试文件是否存在且为普通文件。
--d:测试文件是否存在且为目录。
--r:测试文件是否存在且可读。
--w:测试文件是否存在且可写。
--x:测试文件是否存在且可执行。
7. 其他测试命令:
--t:测试文件描述符是否指向终端。
--s:测试文件大小是否为0。
--c:测试文件是否为字符设备文件。
--b:测试文件是否为块设备文件。
这些参数和测试命令为Shell脚本提供了丰富的功能和灵活性,使得Shell脚本能够根据不同的输入和条件执行不同的操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Shell
Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。
4.1.1 Shell 的基本概念
1. 什么是S hell
Shell 就是用户与操作系统内核之间的接口,起着协调用户与系统的一致性和在用户与系统之间进行交互的作用。Shell 在L inux 系统中具有极其重要的地位,如图4-1 所示
第 4 章 Shell 与 V i 编辑器
- 71 -
diff
grep
vi multitasking
sh gcc
device hardware
interface
kernn e l
TCP/IP
stack
bash
utilii t es
图 4-1 Linux 系统结构组成
2. Shell 的功能
Shell 最重要的功能是命令解释,从这种意义上来说,Shell 是一个命令解释器。Linux
系统中的所有可执行文件都可以作为 Shell 命令来执行。将可执行文件作一个分类,如表 4-1 所示。
表 4-1 可执行文件的分类
部的解释器将其解释为系统功能调用并转交给内核执行;若是外部命令或实用程序就试图 在硬盘中查找该命令并将其调入内存,再将其解释为系统功能调用并转交给内核执行。在 查找该命令时分为两种情况:
用户给出了命令路径,Shell 就沿着用户给出的路径查找,若找到则调入内存,若没有 则输出提示信息;
用户没有给出命令的路径,Shell 就在环境变量 PATH 所制定的路径中依次进行查找, 若找到则调入内存,若没找到则输出提示信息。
图 4-2 描述了 S hell 是如何完成命令解释的。
第4章 Shell 与V i 编辑器
内核中的系统功能调用
图4-2 Shell 执行命令解释的过程
此外,Shell 还具有如下的一些功能:
¾SHELL 环境变量
¾正则表达式
¾输入输出重定向与管道
3. Shell 的主要版本
表4-2 列出了几种常见的S hell 版本。
表4-2 Shell 的不同版本
- 72 -
第 4 章 Shell 与 V i 编辑器
4.1.2 Shell 环境变量
Shell 支持具有字符串值的变量。Shell 变量不需要专门的说明语句,通过赋值语句完 成变量说明并予以赋值。在命令行或 Shell 脚本文件中使用$name 的形式引用变量 name 的 值。
1. 变量的定义和引用
在 S hell 中,变量的赋值有下列句法格式:
name=string
其中,name 是变量名,它的值就是 s tring ,“=”是赋值符号。变量名是以字母或下划 线开头的字母、数字和下划线字符序列。
通过在变量名(name )前加$字符(如$name )引用变量的值,引用的结果就是用字符 串 string 代替$name 。此过程也称为变量替换。
在定义变量时,若 string 中包含空格、制表符和换行符,则 string 必须用‟string ‟或 者”s ting ”的形式,即用单(双)引号将其括起来。双引导内允许变量替换,而单引导内则 不可以。
下面给出一个定义和使用 S hell 变量的例子。
第4章 Shell 与V i 编辑器
Je t‟aime
- 74 -
第4章 Shell 与V i 编辑器
2. Shell 变量的作用域
与程序设计语言中的变量一样,Shell 变量有其规定的作用范围。Shell 变量分为局部变量和全局变量。
¾局部变量的作用范围仅仅限制在其命令行所在的S hell 或S hell 脚本文件中。
¾全局变量的作用范围则包括本S hell 进程及其所有子进程。
¾可以使用e xport 内置命令将局部变量设置为全局变量。
下面给出一个S hell 变量作用域的例子。
第4章 Shell 与V i 编辑器
$ echo $var1
Linux
$ echo var2
unix
$
3. 环境变量
环境变量是指由S hell 定义和赋初值的S hell 变量。Shell 用环境变量来确定查找路径、注册目录、终端类型、终端名称、用户名等。所有环境变量都是全局变量,并可以由用户重新设置。表4-3 列出了一些系统中常用的环境变量。
表4-3 Shell 中的环境变
量
令,命令的格式是:
set 环境变量=变量的值
例如,设置用户的主目录为/home/johe,可以用以下命令:
$ set HOME=/home/john
不加任何参数地直接使用set 命令可以显示出用户当前所有环境变量的设置,如下所示:
$ set
BASH=/bin/Bash
BASH_ENV=/root/.bashrc
(略)
PA TH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
PS1=…[\u@\h \W]\$‟
PS2=…>‟
- 76 -
第4章 Shell 与V i 编辑器
SHELL=/bin/Bash
可以看到其中路径P ATH 的设置为:
- 77 -