Linux中Shell中取消变量和特殊变量的笔记

640?wx_fmt=png

1、取消变量

取消变量也就是将变量从内存中释放出去,可以使用unset 后面加变量名即可,当然函数的释放同样可以采用该方式处理。

比如:name="123"

echo ${name}

输出:123

unset name

echo ${name}

输出:

#取消函数示例

test_function()

{

echo "123"

}

unset test_function

test_function #调用报错

2、Shell特殊变量

位置参数:有时候Shell脚本会有一些预先设定的特殊只读变量,它们的值只有在脚本运行的时候才能确认。简单来说就相当于填空题。空就相当于

位置参数。位置参数命名采用$0作为脚本本身,$1作为第一个参数,第二个是$1,依此类推,当参数大于9的时候需要加括号,比如${10},就是

第10个参数。另外$#表示脚本参数的个数总和,$@或者$*表示脚本的所有参数。

示例:cat test.sh

#!/bin/bash

echo "脚本的名字是:$0"

echo "你好,$1"

echo "你好,$2"

echo "$@你们好"

echo "参数的个数是:$#"

调用:bash test.sh 小明 小强

输出:

脚本的名字是:test.sh

你好,小明

你好,小强

小明小强你们好

参数的个数是:2

脚本或者命令的返回值:$?

Linux系统中规定正常退出的命令和脚本应该以0作为其返回值,任何非0的返回值都是表示命令未正确退出或未正常执行。$?可以得到执行命令的

返回值。所以可以根据$?返回值的情况判断命令执行的状态,从而进行处理。

比如:ifconfi

输出:-bash:ifconfi:command not found

echo $?

输出:127


posted @   天使不哭  阅读(1126)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2016-05-10 SQL Serve允许远程连接的解决方法
点击右上角即可分享
微信分享提示