Shell $? $* $@ 等含义
$0 ------>脚本名
$1 ------>传入的第一个参数值
$? ------>脚本执行的结果。成功==0,不成功==非0
$* ------>所有参数的内容
$@ ------>所有参数的内容
$# ------>参数的数量
$$ ------>表示当前进程的进程号 希望打开一个进程后不再打开另一个
$! ------>表示后台运行的最后一个进程号
测试代码如下:
linux-:/install # cat .sh
#!/bin/sh
echo '$0 == ' $
echo '$1 == ' $
echo '$2 == ' $
echo '$? == ' $?
echo '$* == ' $*
echo '$@ == ' $@
echo '$# == ' $#
echo '$$ == ' $$
echo '$! == ' $! ps -ef | grep "2.sh"
测试结果打印如下:
linux-:/install # ./.sh
$ == ./.sh
$ ==
$ ==
$? ==
$* ==
$@ ==
$# ==
$$ ==
$! ==
root : pts/ :: /bin/sh ./.sh
root : pts/ :: grep .sh
参考了下别的资料,显示的是说 $* 和 $@ 的区别在于:
$*为"1 2 3"(一起被引号包住)
$@为"1" "2" "3"(分别被包住)
即$@可以当作数组来用
注:没实际使用过。待验证。 突然看到一个很详细的blog:
http://c.biancheng.net/cpp/view/2739.html
随机推荐
- bzoj 1146 [CTSC2008]网络管理Network
很久之前写过 count on the tree. 然后一直不懂树状数组是怎么套上这个主席树的. 看了两小时发现它套的就是个权值线段树, 看不出来可持久化在哪里. 因为动态开点所以空间nlog2n. ...
- arch+xfce4系统配置
音量控制快捷键插件: sudo pacman -S xfce4-volumed
- Redis之个人简单理解
1.什么是redis? 在过去的几年中,NoSQL数据库一度成为高并发.海量数据存储解决方案的代名词,与之相应的产品也呈现出雨后春笋般的生机.然而在众多产品中能够脱颖而出的却屈指可数,如Redis.M ...
- react native 环境配置
1. 安装Homebrew Homebrew主要用于安装后面需要安装的watchman.flow 打开MAC的终端,输入如下命令: ruby -e "$(curl -fsSL https:/ ...
- 命令行提交本地项目到github上
1.github账号要有. 2.配置ssh key ① defaults write com.apple.finder AppleShowAllFiles -bool true 终端 显示隐 ...
- Java虚拟机浅探
简介 对于java开发人员了来说,对java虚拟机肯定有着或多或少的了解.因为有了虚拟机的存在,才会使得java的内存管理变得那么方便,不再像C++那样使用new/delete来直接管理内存.知名的j ...
- QQ远程桌面的使用
腾讯QQ怎样使用远程桌面: ---------------------- ----------------------
- python发送邮件
python发送邮件(无附件) ======================================================= #!/usr/bin/env python#coding ...
- 【转】Python实现不同格式打印九九乘法表
前言:最近在学习Python,学习资源有慕课网上的视频教程.菜鸟教程以及Python官方文档tutorial.虽然了解了Python的基本语法,但是还没有真正意义上输出自己写的代码.代码小白,之前仅学 ...
- dom 的介绍
直接上干货 ...网址在此,,,,, <a href="https://developer.mozilla.org/zh-CN/docs/Web/API/Document_Object ...