脚本中$

$# 是传给脚本的参数个数

$0 是脚本本身的名字

$1 是传递给该shell脚本的第一个参数

$2 是传递给该shell脚本的第二个参数

[email protected] 是传给脚本的所有参数的列表

$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9

$$ 是脚本运行的当前进程ID号

$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误

${变量}->取出变量的意思

$(指令)->取出指令

时间: 2024-08-04 14:49:12

脚本中$的相关文章

shell 脚本中$$,$#,$?

$0 这个程式的执行名字$n 这个程式的第n个参数值,n=1..9$* 这个程式的所有参数,此选项参数可超过9个.$# 这个程式的参数个数$$ 这个程式的PID(脚本运行的当前进程ID号)$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)$? 执行上一个指令的返回值 (显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误)$- 显示shell使用的当前选项,与set命令功能相同[email protected] 跟$*类似,但是可以当作数组用 shell 脚本中$$,

Ctrl +c 脚本中

#!/bin/bashsar -n DEV 1 111111111111111 >>1.txt &   #实时网卡流量数据  sleep 3 && kill -2 $! #Ctrl +c     停止脚本运行  kill -2    -2就是sigint,一般来说ctrl+c就是发出的siginit

批量杀掉多个pid文件中记录的pid进程, 并集成到shell脚本中

1 head_files=`find ./fmsConf/ -name "*.pid"` 2 for file in $head_files 3 do 4 cat $file | awk '{print $1}' | xargs kill -9 5 rm -f $file 6 done 代码如上 解释: 1. 查找到 ./fmsConf目录下的所有的pid文件 2. 对查找到的文件进行遍历 3. 开始遍历 4. 分开解释: 1. cat $file : 打印出file文件的内容 2.

2018-11-25随笔-今天谈谈C++嵌入Python脚本中遇到的问题

由于现在很多底层协议用C/C++,然后机器学习或者深度学习等算法模型使用基于Python的TensorFlow来实现.所以现在C++用来做框架,做软件界面,然后调用Python的算法脚本来进行计算是很常见的需求. 我们的项目中也存在着这样的需求.下面来记录一下相应的实现方式. 背景:C++上用MFC做界面,Python上是import了numpy与pandas模块的处理功能(后续的基于sklearn与TensorFlow的脚本还没嵌入,配置方式相同,后续实验会再放上来) 软件配置:win10/6

$ 符号在脚本中的使用

(1)<The Linux Command Line> P99 Double Quotes 双引号中,除“$ \ ' ”外,其他的特殊字符都会失去原有的特殊意义: 双引号特殊使用情况: case 1: 某个文件名为:two word.txt (中间有空格),使用命令:ls -l two word.txt ,会出错.使用ls -l “two word.txt”,就是正确的. 但是现在的系统不用这样做了,使用自动补全,系统会自动识别空格 case 2: case 3: case 4: (2) &l

linux压缩、解压及read在脚本中的使用

压缩格式: gz,bz2,xz,zip,Z 算法不法:算法不同,压缩比也会不同 compress: FILENAME.Z uncompress 目前比较流行的格式:xz,bz2,gz gzip: .gz gzip /path/to/somefile:压缩完成后,会删除原文件 -d 解压缩 -# 1-9指定压缩比,默认为6 gunzip /PATH/TO/SOMEFILE.gz 解压缩也会删除原文件 zcat 查看压缩文件的内容,在不解压的情况下,查看文本文件的内容 bzip2: .bz2 比gz

理解c#的Get Set访问器及测试脚本中的应用

假设我们需要定义一个新的数据类型,并要创建这种类型的变量,赋值,应用. 1. 理解概念: 先通过一个生动的例子来理解概念: 创建一个Cat类,其中定义私有属性(又名字段),和属性. class Cat { private string name; private int age; private string sex; public string Name { get { return this.name; } set { this.name = value; } } public int Ag

Connection termination(by client)” 错误的处理方法

背景: 在一些项目,当我们使用LR录制脚本的时候,在我们安装认证我们无法启动[网址= ] HTTPS [/url]的IE插件,页面显示空白,没有事件的记录,在Firefox也一样. 在记录日志,我们会发现 “Connection termination(by client)” 的错误 分析:原因是是loadrunner 并不支持该格式的证书.我们安装的证书格式是.er,但是loadRunner只支持 .pem的格式. 解决方案:1. 我安装了证书2.输出 证书 (base64), 如:c:/te

Shell中逻辑判断

[ 条件1 -a 条件2 ]   当1和2都真时才为真 [ 条件1 -o 条件2 ]   当1和2其中一个为真即为真 [ ! 条件 ]           取反 &&     与 ||       或 ! 非符号 [ -d name ] && echo "is dir"  name为目录时为真,接着才出输入内容 有if---then的意思 [ -d name ] && echo "is dir" || echo &qu