Shell命令

合集下载

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会话中依次执行。

以下是一个使用分号的Shell脚本示例:

```bash

echo "Hello"; echo "World"

```

在上面的示例中,两个echo命令之间使用分号分隔。当脚本执行时,它会先执行第一个echo命令输出"Hello",然后执行第二个echo命令输出"World"。

除了分号,还有其他几种方式可以分隔Shell命令:

1. 换行符:每个命令占据一行,这是最常见的分隔方式。

2. 管道符(|):将一个命令的输出作为另一个命令的输入。

3. 逻辑运算符(&& 和 ||):用于控制命令的执行顺序。&& 表示前一个命令成功执行后才执行后一个命令,|| 表示前一个命令失败时才执行后一个命令。

需要注意的是,分号用于分隔命令,而不是连接命令。如果需要将多个命令的输出连接在一起,可以使用输出重定向(>),或者使用命令替换($(command))。

shell 命令的返回值

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命令时,可以传递给命令的附加信息。通过命令参数,我们可以改变命令的行为、指定命令的输入输出、调

整命令的执行方式等。下面是一些常用的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手册的主要内容:

一、介绍

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编程基础知识点

一、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命令的用法

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执行方法,包括条件判断、循环、函数定义等。

一、条件判断

在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 最简单的阻塞命令

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命令的返回值

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 标准输入命令行参数

Shell 标准输入主要来自命令行参数,具体如下:

1.命令行参数:Shell脚本接收命令行参数的最基本方法是使用位置参数。位置参数允许在运行脚本时向命令行添加数据。例如,0是程序

名,1是第一个参数,2是第二个参数,依次类推,直到第9个参数9。当然,位置参数不仅仅支持9个参数,如果需要支持多余9个的位置参数,可以在变量数字周围加上花括号。

2.特殊参数变量:特殊参数变量包括0、#、∗、@等。其中,#表示传递给脚本或函数的参数个数;*表示传递给脚本或函数的所有参数;$@

表示传递给脚本或函数的所有参数。

以上内容仅供参考,如需更多信息,建议查阅相关文档或咨询专业人士。

linux shell命令参数

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 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查看文件内容的命令

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指令

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脚本编程中非常重要的一部分,它们为脚本提供了外部输入和动态行为的能力。以下是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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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 -

相关文档
最新文档