shell特殊变量-$?,$@,$*,$$,$n等

拼团系统设计-人群标签的设计与思考 最近在学习一个拼团项目中涉及到的人群模块的设计,写下一些实现与思考。 阅读详情

$0 : 输出函数或脚本的名字

$n : 输出函数或脚本的第n个参数

$$ :输出当前shell所属的pid ,可通过这个命令获取shell运行时的pid

$# :输出函数或脚本的输入参数个数

$@ :输出函数或脚本的输入参数

$* :输出函数或脚本的输入参数

$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。

但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数。
脚本中遍历参数的应用
echo "script begin...."
echo "script name:" $0
echo "script pid:" $$
echo "param size:" $#
echo "params:$@"
echo "params:$*"

echo '$@方式'
for loop in "$@"
do
   echo "..."
   echo $loop
done

echo 'while方式'
while [ $# != 0 ]
do
   echo "..."
   echo $1
   shift  #左移,第二个参数变为第一个
done
[内网基础] 内网基础知识 —— Windows 工作组 在一个大型单位里,可能有成百上千台计算机互相连接组成局域网,如果不对这些计算机进行分组,网络的混乱程度是可想而知的。Windows 为了解决这一问题,就产生了工作组(Work Group)这个概念。Windows 工作组尝试将不通的计算机按功能(或部门)分别列入不同的工作组,例如技术部的计算机都列入 “技术部” 工作组、行政部的计算机都列入 “行政部” 工作组。要想访问某个部门的资源,只要在 “网络” 里双击该部门的工作组名,就可以看到该部门里的所有计算机了。 阅读详情

相关推荐

NotebookLM平替实测:用Open Notebook+Ollama零成本搭建私有AI知识库

本文提供了一份详细的实战指南,教你如何利用Open Notebook与Ollama,在本地零成本搭建一个功能强大且完全私有的AI知识库。通过Docker容器化部署,实现数据绝对安全、模型自由选择与离线运行,是NotebookLM等云端工具的绝佳平替方案,尤其适合注重数据隐私的教育工作者、研究者及小团队。

weixin_29052717的博客 515

shell脚本中$#、$*、$@、$?、$0-n等含义一次性搞明白!!!

一、Shell脚本变量$#,$*等的含义 1、$#:表示执行脚本传入参数的个数 2、$*:表示执行脚本传入参数的列表(不包括$0) 3、$$:表示进程的id 4、$@:表示执行脚本传入参数的所有个数(不包括$0) 5、$0:表示执行的脚本名称 6、$1:表示第一个参数 7、$2:表示第二个参数 8、$?:表示脚本执行的状态,0表示正常,其他表示错误 二、$*和$@的差异 在shell中,$@和$*都表示命令行所有的参数(不包含$0),但是$*将命令行所有的参数看成一个整体,而$@则区分各

心情舒畅 3万+

Fiddler Everywhere保姆级教程:10分钟搞定手机HTTPS抓包(附证书配置避坑指南)

本文提供Fiddler Everywhere移动端HTTPS抓包的保姆级教程,涵盖环境配置、代理设置、证书安装及常见问题排查。重点解析如何正确安装并信任Fiddler根证书以解密HTTPS流量,帮助开发者快速搭建抓包环境,高效分析应用网络行为,提升调试效率。

git9versioner的博客 705

shell中$*和$@的区别

$*和$@都表示传递给参数或者脚本全部参数 当$*和$@不加双引号时,两者没有任何区别,都表示将接收到的每一个参数当做每一份数据,每个参数之间用空格来分开 当$*和$@加上双引号,则两者就存在一下区别 "$*" 表示将传入的多个参数从整体上当做一份数据 "$@" 表示仍然将传入的多个参数当做多份数据,空格区分,彼此之间独立 运行下面shell代码test.sh 传入相应的参数运行bash test.sh 1 2 3 4 5,分别for循环输出$*和$@,以及"$*"和"$@",结果如下: .

lemon_tree1994的博客 8438

ROS激光雷达动态避障算法优化(C++实战)

本文深入探讨了ROS激光雷达动态避障算法的C++实战优化。针对动态环境的核心挑战,文章系统性地介绍了从激光数据预处理(降噪、瘦身)、动态障碍物检测与跟踪,到基于动态窗口法(DWA)的智能决策与调优的全流程。重点分享了如何将障碍物速度预测融入DWA打分函数,以实现更安全、流畅的避障,并提供了工程架构、性能优化及真机调试的实用建议。

weixin_29192141的博客 948

3D Gaussian Splatting:用于实时的辐射场渲染

3D Gaussian Splatting:用于实时的辐射场渲染 3d gaussian splatting for real-time radiance field rendering

m0_51976564的博客 1万+

Shell编程之Bash的基本功能(3)特殊符号-$、\、()、[]、{}、' '、" "、``

请坐!特殊符号$与\单引号双引号反引号与$()中括号 特殊符号 $与\ $ 用于调用变量的值 [root@lx101 /]# name=laoxu [root@lx101 /]# echo '$name' $name \ 转义符 \后的特殊符号都是去特殊意义 [root@lx101 /]# echo "\$name" $name 单引号 只输出单引号中的内容 几乎所有的特殊符号,在单引号内都...

老徐是个铁憨憨 6632

详解ReID的各部分组成及Trick——基于FastReID

这一系列博客将基于京东开源的FastReID进行扩充,详细介绍了ReID的各个组成部分,一些有用的Trick,评价指标,常用数据集等,详细内容见下方的链接,总结不易,如有理解不正确之处,麻烦各位批评指正。 一、FastReID的中的baseline文件配置 二、Training strategy 三、Pre-processing 四、Backbone 五、Aggregation 六、Head 七、Loss 八、Distance Metric 九、Post-processing 十、Evaluation 十一

藏晖的博客 9165

Linux shell 脚本中, $@ 和$# 分别是什么意思

示例:编写如下shell脚本,保存为test.sh。Linux shell 脚本中,$#:表示返回所有脚本参数的个数。$@:表示所有脚本参数的内容。# 分别是什么意思?

ZauberC的博客 4082

基于STM32L4XX、HAL库的 TMC2660C-PA 驱动程序设计

/ 默认灵敏度和电流。// 20/31最大电流。

zhusl6688的博客 386

74.9008深度刷机原理|高通QPST/Firehose底层刷写协议详解

移动设备刷机与底层维修技术指南 本文为移动设备维修人员和高级玩家提供全面的刷机与底层维修技术指南,涵盖高通、联发科和苹果A系列芯片的主要操作。 主要内容 核心操作:Bootloader解锁、Fastboot刷写、EDL深度修复、iTunes DFU模式恢复和分区表重建 适用场景:系统故障修复、底层损坏恢复、安全限制解除、系统降级和深度硬件维修 关键技术:详细解析刷机协议栈层级、关键分区作用和刷机安全机制 操作步骤: 环境搭建与驱动安装 Bootloader解锁(以小米为例) 高通机型系统刷写 苹果设备DFU

2601_95651806的博客 205

shell脚本中$0 $1 $# $@ $* $? $$ 的各种符号意义详解

shell脚本中$0 $1 $# $@ $* $? $$ 的各种符号意义详解

weixin_49114503的博客 1万+

【Bug已解决】Codex CLI 运行时出现 command not found: codex 解决方案

方案适用场景推荐指数修复 PATH 配置最常见的基础排查方向⭐⭐⭐⭐⭐检查原生二进制完整性PATH 正常但执行仍然异常⭐⭐⭐⭐统一包管理器混用多种包管理器导致混乱⭐⭐⭐⭐确认安装脚本未被跳过CI/CD 或企业策略环境⭐⭐⭐⭐排查网络下载渠道企业内网/受限网络环境⭐⭐⭐需要留意 warning 中是否涉及脚本执行失败、网络超时重试等信息,这类 warning 往往是后续问题的前兆,建议出现明显的下载/网络相关警告时就主动重新安装一次确认。Codex CLI 报。

一键难忘的博客 1万+

Shell特殊变量:$0、$n、$#、$*、$@、$?、$$

Shell特殊变量:$0、$n、$#、$*、$@、$?、$$

sodaloveer的博客 3159

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Shell特殊变量讲解:$n、$#、$*、$@、$?、$$各自代表的意思及用法

$n 语法:$n,含义:用于接收shell脚本文件执行时传入的参数。 $0 #用于获取当前脚本文件名称 $1~$9 #代表输入的第一个参数到第9个参数 # 这都不用括号(要也不影响) 第10个以上就用数字比如{数字} 比如数字比如{12} # 后面这些都必须要{ }括号 简单示例编辑一个名为456.sh的shell脚本: #!/bin/bash echo $0 echo "输入的第一个参数:$1" echo "输入的第二个参数:$2" echo "输入的第11个参数:${11}" 执

nianjiuhuiyi的博客 2万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Shell 特殊变量,$0, $n, $*, $@, $#, $?, $$

$0 当前脚本的文件名 $n 第n个参数,第1个参数,$1 $# 参数的个数 $* 所有参数,"$*" = "$1 $2 … $n" $@ 所有参数, "$@" = "$1" "$2" ... "$n" #? 上一个命令的退出状态或函数的返回值,一般情况下,大部分命令执行成功会返回 0,失败返回 1。 $$ 当前shell进程id $* 和 $@ 的区别 $* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。 但是当它.

TianRangDeJieHuo的博客 356

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Shell特殊变量的含义和用法:$n、$#、$*、$@、$?、$$、##、%%

shell中有两类字符:普通字符、元字符。普通字符在Shell中除了本身的字面意思外没有其他特殊意义,即普通纯文本;元字符是Shell的保留字符,在Shell中有着特殊的含义。今天主要介绍一下shell中字符 $ 、## 和 %% 的各种用法。

sinat_32152141的博客 3236

Shell特殊变量: $0, $#, $*, $@, $?, $$, $!, $_和命令行参数$n

linux特殊命令参数说明

Gikor 4071

shell脚本中的特殊变量:$n,$#,$*,$@,$?,$$

原文链接:https://www.cnblogs.com/wangcp-2014/p/6427689.html 在我们日常编写及查阅shell脚本的过程中,经常会出现$0,$1,$2,$#,$?等特殊变量,在这里总结一下。 变量 意义 $0 表示执行脚本的脚本名 $n n表示数字,从1开始整数上升,如$1表示此脚本的第一个参数,$2表示第二个参数,以此类推。。 $# 表示这...

、大荡的博客 903

一文教你入门shell脚本2.0——Shell特殊变量:Shell $#、$*、$@、$?、$$以及浅谈$* 和$@的区别

Shell特殊变量Shell特殊变量1、Shell特殊变量1.1、Shell特殊变量表以及作用1.2、给脚本文件传递参数1.3、给函数传递参数2、浅谈 $ * 和$ @的区别参考 Shell特殊变量 1、Shell特殊变量 1.1、Shell特殊变量表以及作用 变量名称 作用 $0 当前脚本的文件名。 $n(n≥1 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是 $1,第二个参数是 $2。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所

JMW1407的博客 1975

Shell $0, $#, $*, $@, $?, $$

特殊变量列表 变量 含义 0当前脚本的文件名0 当前脚本的文件名 n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是1,第二个参数是1,第二个参数是2。 #     传递给脚本或函数的参数个数。# 传递给脚本或函数的参数个数。 * 传递给脚本或函数的所有参数。 @传递给脚本或函数的所有参数。被双引号("")包含时,与@ 传递

情义唯真,友谊方长存 2339

Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数

转载:https://www.cnblogs.com/davygeek/p/5670212.html 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所有参数。 $@ 传递...

总结 458

shell脚本中的$# $0 $@ $* $$ $! $?的意义

shell脚本中的$# $0 $@ $* $$ $! $?的意义 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2 $# 传递给脚本或函数的参数个数 $* 传递给脚本或函数的所有参数 $@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同 $? 上个命令的退出状态,或函数的返回值 $...

baidu_28126759的博客 4038

linux shell 特殊变量 符号 $0, $#, $*, $@, $?, $$ 命令行参数

特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所有参数。 $@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。 $? 上...

whatday的专栏 383
上一篇: linux常用命令-文件编辑类(cat,vim,more)
下一篇: hive sql注意事项
Java_Soldier
博客等级 码龄10年 27粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值