特殊变量列表
|
变量
|
含义
|
$0
|
当前脚本的文件名
|
$n
|
传递给脚本或函数的参数。n是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。
|
$#
|
传递给脚本或函数的参数个数。
|
$*
|
传递给脚本或函数的所有参数。
|
$@
|
传递给脚本或函数的所有参数。被双引号("")包含时,与$*稍有不同,下面将会讲到。
|
$?
|
上个命令的退出状态,或函数的返回值。
|
$$
|
当前Shell进程ID。对于Shell脚本,就是这些脚本所在的进程ID。
|
字符串运算符列表
|
运算符
|
说明
|
举例
|
=
|
检测两个字符串是否相等,相等返回true。
|
[$a=$b]返回false。
|
!=
|
检测两个字符串是否相等,不相等返回true。
|
[$a!=$b]返回true。
|
-z
|
检测字符串长度是否为0,为0返回true。
|
[-z$a]返回false。
|
-n
|
检测字符串长度是否为0,不为0返回true。
|
[-z$a]返回true。
|
str
|
检测字符串是否为空,不为空返回true。
|
[$a]返回true。
|
Shell中包含脚本可以使用:
.filename
或
sourcefilename
两种方式的效果相同,简单起见,一般使用点号(.),但是注意点号(.)和文件名中间有一空格
文件测试运算符列表
|
操作符
|
说明
|
举例
|
-bfile
|
检测文件是否是块设备文件,如果是,则返回true。
|
[-b$file]返回false。
|
-cfile
|
检测文件是否是字符设备文件,如果是,则返回true。
|
[-b$file]返回false。
|
-dfile
|
检测文件是否是目录,如果是,则返回true。
|
[-d$file]返回false。
|
-ffile
|
检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回true。
|
[-f$file]返回true。
|
-gfile
|
检测文件是否设置了SGID位,如果是,则返回true。
|
[-g$file]返回false。
|
-kfile
|
检测文件是否设置了粘着位(StickyBit),如果是,则返回true。
|
[-k$file]返回false。
|
-pfile
|
检测文件是否是具名管道,如果是,则返回true。
|
[-p$file]返回false。
|
-ufile
|
检测文件是否设置了SUID位,如果是,则返回true。
|
[-u$file]返回false。
|
-rfile
|
检测文件是否可读,如果是,则返回true。
|
[-r$file]返回true。
|
-wfile
|
检测文件是否可写,如果是,则返回true。
|
[-w$file]返回true。
|
-xfile
|
检测文件是否可执行,如果是,则返回true。
|
[-x$file]返回true。
|
-sfile
|
检测文件是否为空(文件大小是否大于0),不为空返回true。
|
[-s$file]返回true。
|
-efile
|
检测文件(包括目录)是否存在,如果是,则返回true。
|
[-e$file]返回true。
|
分享到:
相关推荐
Linux Shell 基础知识和常用命令学习 Shell 是一个命令行解释器,提供了用户与操作系统之间的交互接口。Shell 的主要功能是读取用户的命令,解释命令,并将其传递给操作系统执行。Linux 中有多种 Shell,常用的有 ...
6. **模板支持**:预定义了一系列常用的Shell脚本模板,用户也可以自定义模板,快速生成常见代码结构。 7. **多语言支持**:不仅支持Bash,还涵盖了其他常见的Shell解释器,如csh、tcsh、zsh等。 8. **版本控制...
- **常见的Shell类型**:Bash(Bourne-Again SHell)是最常用的Shell,其他还有Sh、Csh、Ksh、Zsh等。 2. **编写Shell脚本** - **脚本结构**:一个简单的Shell脚本通常以`#!/bin/bash`开头,指定解释器为Bash。...
- **Shell种类**:介绍常用的Shell类型,如Bash、Csh、Ksh等,并重点讲解Bash Shell。 - **Shell环境搭建**:包括Linux发行版的选择、虚拟机安装配置等基础知识。 #### 二、基本Shell命令操作 - **文件管理命令**:...
1. **Shell基础**:首先,课程会从Shell的基础知识入手,包括解释什么是Shell、常用的Shell类型(如Bash、Sh、Csh等)以及它们之间的区别。此外,还会介绍基本的Shell语法,如变量定义、条件语句、循环结构、函数...
- **遵循一致的编码风格**:统一的缩进、空格使用等可以提高代码的可读性。 - **合理利用注释**:适当的注释可以帮助他人(也包括未来的自己)更快地理解脚本逻辑。 - 示例: ```bash #!/bin/bash # This is a ...
4. **函数定义**:可以通过定义函数来封装常用的功能模块,提高代码的复用性。 5. **错误处理**:合理地处理错误和异常情况,确保脚本的健壮性和稳定性。 6. **注释**:添加必要的注释帮助理解和维护脚本。 #### 六...
12. **Shell脚本的最佳实践**:学习编写清晰、可维护的脚本,包括良好的注释习惯和遵循一定的编码风格。 压缩包中的PDF文件可能包含了上述各个主题的详细讲解。每个PDF可能专注于一个或几个特定的主题,例如029.PDF...
- **常用环境变量**: - `PATH`: 查找可执行文件的路径列表。 - `CDPATH`: `cd` 命令的搜索路径。 - `HOME`: 用户的主目录。 - `IFS`: 内部字段分隔符,默认为空格、制表符和换行符。 - `MAIL`: 邮件存放路径。...
标题“ThinkPHP_getshell-v2.zip”提示我们关注的是与ThinkPHP框架相关的安全问题,特别是一个可能导致getshell的漏洞...对于开发者来说,了解和掌握安全编码的最佳实践是至关重要的,以防止类似的问题在未来再次发生。
8. 支持多种字符编码:兼容UTF-8等多种字符编码,确保不同语言环境下的正常显示。 三、Xshell的使用技巧 1. 利用别名:可以为常用的命令或命令组合设置别名,简化输入。 2. 公钥认证:为了进一步提升安全性,可...
- **最佳实践**:遵循良好的编码风格,注释清晰,避免潜在的命令注入漏洞。 通过这个Bash Shell教程,你将能够熟练掌握Shell的基本操作和脚本编写,进一步提升你在Linux环境中的工作效率。不断练习和探索,你将...
6. **函数和别名**:创建自定义函数以封装重复的命令序列,使用别名简化常用命令,提升脚本可读性和效率。 7. **正则表达式**:理解正则表达式的概念和语法,用于在脚本中进行字符串匹配和替换,增强文本处理能力。...
2. **Bash Shell**:Bash是最常用的Shell,它是GNU Project的一部分,被广泛应用于Linux发行版和macOS。本书可能重点讲解Bash的语法和特性。 3. **Shell基本操作**:包括创建、删除、移动和重命名文件,以及目录...
Shell脚本可以接收用户输入,常用的有: - 命令行参数:使用`$1`, `$2`, `$3`等接收输入参数。 - 特殊参数变量:如`$#`表示参数的数量,`$*`表示所有参数。 - 获取所有参数:可以使用`$@`。 - 移动变量:使用`shift`...
If语句和Case语句是Shell脚本中常用的控制结构,前者用于基于条件的分支选择,后者则更适用于基于模式匹配的多选一情况。根据具体需求选择合适的控制结构,可以提高脚本的可读性和效率。 ### 14. For与While/Until...
"运维人员-日常运维常用shell脚本.zip"这个压缩包很可能包含了多种适用于日常运维场景的脚本示例。 一、Shell脚本基础 Shell脚本由各种Linux或Unix命令组成,通过控制流语句(如if、for、while)进行逻辑处理。例如...
这个“用于生成3D人脸的卷积网格自动编码器_Python_Shell_下载.zip”压缩包文件包含了用于构建和运行这种模型的源代码和可能的数据集。以下是对该主题的详细解释: 1. **3D人脸识别**:3D人脸识别是通过获取和分析...
4. **颜色编码和高亮**:为了提升可读性,命令输出可能被颜色编码,关键信息会被突出显示。 5. **多窗口支持**:用户可能可以同时打开多个命令行窗口,便于进行多任务处理。 6. **自定义快捷键**:用户可以设置自己...