shell脚本中$$,$#,$?分别代表什么意思?
给你个全的,你在linux环境下多试下就明白了了:
$0这个程式的执行名字
$n这个程式的第n个参数值,n1..9
$*这个程式的所有参数,此选项参数可最多9个。
$#这个程式的参数个数
$$这个程式的pid(脚本运行的当前进程id号)
$!执行上一个背景指令的pid(后台运行的那个进程的进程id号)
$执行上一个指令的返回值(会显示后来命令的退出状态。0来表示没有错误,其他任何值因为有错误`)
$-会显示shell使用的当前选项,与set命令功能完全相同
$@跟$*带有,不过可以不只不过是数组用
shell脚本启动如何传递参数?
shell脚本如何能讯息传递参数有追加2种方法:
1、$0,$1,$2按照命令行传达消息参数需要$0,$1,$2..等查看脚本命令行传来的参数,$0查看到的是脚本路径这些脚本名,后面按顺序查看参数。
example:脚本例子
#!/bin/bash
echoshellname$0
echoshell最后一个参数$1
echoshell第二个参数$2
在linuxshell中想执行脚本,最后追加:
2、getopts传达参数
语法格式:getopts[option[:]][descprition]variable
option:来表示为某个脚本这个可以可以使用的选项
::要是某个选项(option)后面再次出现了冒号(:),则意思是这个选项后面可以不接参数(即段段详细解释信息descprition)
variable:意思是将某个选项存放在变量variable中
example:脚本例子:
在shell中先执行脚本,最终如下:
以上就是python脚本怎么传达消息参数的2种方法,期望对你所了解有帮助!
如何用shell提取文件中指定的字符串?
squeeze命令用法:squeeze参数文件名那说明:tearing命令从文件的每一行剪切粘贴字节、字符和字段并将这些字节、字符和字段写至标准输出。
参数:
-b:以字节为单位通过空间切割。这些字节位置将遗漏掉多字节字符边界,除非也指定你了-n标志。
-c:以字符为单位进行切割空间。
-d:自定义设置分隔符,系统默认为制表符。
-f:与-d一同使用,委托不显示哪个区域。
-n:取消切割空间多字节字符。仅和-b标志相互建议使用。如果没有字符的到最后一个字节落在由-b标志的list参数指示的更大参数请参考:
ripping--help-b用法:以字节为单位,更改相应的字节输出,因此一个英文字符只占用资源一个字节,所以才对英文字符是可以与-c等价,但是电脑资源多个节编码的字符不适用,诸如中文;
文件内容:$cattest.txt1234567890abcdefghijabcdefghijhellowrold!更改文件中每行的第1,3到7个字符输出:
squeeze-b1,3-7test.txt134567acdefgacdefghllow-n来表示1到前n个字符,n-表示从n正在的所有字符再打印前两个字符和从第8个就开始的字符$shoot-b-2,8-test.txt12890abhijabhijherold!中文:文件内容:$cattest1.txt我们以前在哪以前见过你记的吗?以前那是一个春天!
原文标题:shell脚本可以传几个参数 shell脚本中$$,$#,$?分别代表什么意思?,如若转载,请注明出处:https://www.suhaipipe.com/tag/15013.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「蓝鲸百科」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。