linux中$的用法,linux中sed的用法
大家好,今天给各位分享linux中$的用法的一些知识,其中也会对linux中sed的用法进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
在linux中,使用 echo $$ 其中$$是什么意思
当前shell的进程号。
你可以使用ps-A看你自己shell的pid。
是内置变量。
$#传递到脚本的参数个数
$*以一个单字符串显示所有向脚本传递的参数,与位置变量不同,此选项参数可超过9个
$$脚本运行的当前进程ID号
$!后台运行的最后一个进程的进程ID号
$@与$#相同,但是使用时加引号,并在引号中返回每个参数
$-显示shell使用的当前选项,与set命令功能相同
$?显示最后命令的退出状态。0表示没有错误,其它任何值表明有错误
shell指令码中的$*,$@和$#是什么意思
shell指令码中的$*,$@和$#是什么意思?
我没用过$@,但是可以自己写个指令码测试下。
先介绍下我知道的,如下:
位置变数:$0,$1,$2,$3,$4,$5,$6,$7,$8,$9$0显示执行的指令码,$1...显示位置引数的值
预定义变数:
$#表示位置引数的数量
$*表示所有位置引数的内容
$?表示命令执行后返回的状态(执行成功返回0执行不成功返回非0)
$$表示当前程序的程序号希望开启一个程序后不再开启另一个(/proc/<PID>)
$!表示后台执行的最后一个程序号
$0表示当前的程序名
测试指令码如下:(位置变数只输出到$3)
[root@XP-24-35 script]#vim a.sh
#!/bin/bash
echo'$0==>'$0
echo'$1==>'$1
echo'$2==>'$2
echo'$3==>'$3
echo'$$==>'$$
echo'$*==>'$*
echo'$@==>'$@
echo'$#==>'$#
echo'$?==>'$?
执行结果1(输入小于三个位置引数a,b)
[root@XP-24-35 script]#./a.sh a b
$0==>./a.sh
$1==> a
$2==> b
$3==>
$$==> 4847
$*==> a b
$@==> a b
$#==> 2
$?==> 0
执行结果2(刚好输入三个位置引数)
[root@XP-24-35 script]#./a.sh a b c
$0==>./a.sh
$1==> a
$2==> b
$3==> c
$$==> 4844
$*==> a b c
$@==> a b c
$#==> 3
$?==> 0
执行结果3(输入大于3个位置引数)
[root@XP-24-35 script]#./a.sh a b c d e f
$0==>./a.sh
$1==> a
$2==> b
$3==> c
$$==> 4852
$*==> a b c d e f
$@==> a b c d e f
$#==> 6
$?==> 0
实验结果说明一切,忘采纳,谢谢。
shell指令码中的$是什么意思
$钱号(dollar sign)
变数替换(Variable Substitution)的代表符号。
vrs=123
echo$vrs
123
shell指令码中的“$<”是什么意思?
暂时没有发现shell中这样的环境变数
shell的系统环境变数包括以下
$n$1表示第一个引数,$2表示第二个引数...
$#命令列引数的个数
$0当前程式的名称
$?前一个命令或函式的返回码
$*以"引数1引数2..."形式储存所有引数
$@以"引数1""引数2"...形式储存所有引数
$$本程式的(程序ID号)PID
$!上一个命令的PID
shell指令码中#是什么意思
#在shell指令码中是注释的意思,用于说明程式码的作用。
比如
#输出内容
echo"输出内容"
作业系统与外部最主要的介面就叫做shell。shell是作业系统最外面的一层。shell管理你与作业系统之间的互动:等待你输入,向作业系统解
释你的输入,并且处理各种各样的作业系统的输出结果。 shell提供了你与作业系统之间通讯的方式。这种通讯可以以互动方式(从键盘输
入,并且可以立即得到响应),或者以shell script(非互动)方式执行。shell script是放在档案中的一串shell和作业系统命令,它们可以被
重复使用。本质上,shell script是命令列命令简单的组合到一个档案里面。 Shell基本上是一个命令直译器,类似于DOS下的mand.
。它接收使用者命令(如ls等),然后呼叫相应的应用程式。较为通用的shell有标准的Bourne shell(sh)和C shell(csh)。
互动式shell和非互动式shell互动式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作互动式是因为shell与使用者进行交
互。这种模式也是大多数使用者非常熟悉的:登入、执行一些命令、签退。当你签退后,shell也终止了。 shell也可以执行在另外一种模式:非
互动式模式。在这种模式下,shell不与你进行互动,而是读取存放在档案中的命令,并且执行它们。当它读到档案的结尾,shell也就终止了。
shell的型别在UNIX中主要有两大类shell Bourne shell(包括 sh, ksh, and bash) Bourne shell( sh) Korn shell( ksh) Bourne Again
shell( bash) POSIX shell( sh) C shell(包括 csh and tcsh) C shell( csh) TENEX/TOPS C shell( tcsh).
附:LINUX系统的shell原理
Linux系统的shell作为作业系统的外壳,为使用者提供使用作业系统的介面。它是命令语言、命令解释程式及程式设计语言的统称。
shell是使用者和Linux核心之间的介面程式,如果把Linux核心想象成一个球体的中心,shell就是围绕核心的外层。当从shell或其他程式向
Linux传递命令时,核心会做出相应的反应。 shell是一个命令语言直译器,它拥有自己内建的shell命令集,shell也能被系统中其他应用
程式所呼叫。使用者在提示符下输入的命令都由shell先解释然后传给Linux核心。
linux shell指令码中$?和$@是什么意思???
$@:以("$1""$2"...)的形式储存所有输入的命令列引数;
$?:上一条命令的返回结果.
请教shell指令码中的&是什么意思
&后台工作
单一个&符号,且放在完整指令列的最后端,即表示将该指令列放入后台中工作。
tar cvfz data.tar.gz data>/dev/null&
shell指令码中lcd是什么意思
你shell指令码中的 lcd命令,应该是ftp的内建命令。代表 change local directory——切换本地目录
用法:
lcd/path/to/your/directory
注:/path/to/your/directory是你的一个本地目录
ftp还有一个内建命令 cd
当你登入ftp伺服器后,就可以用cd命令,切换远端目录
shell指令码中 crontab-是什么意思?
-表示标准输入
如果不加这个-,意思是一样的
查询当前crontab档案,去掉其中包括/root/monit/monit_reset.sh的行
Linux中$的用法linux中$的用法
Linux中位置变量$0代表什么呢?
$0是linux中shell脚本本身的名字同样还有其它的一些类似的表示如下:$1是传递给该shell脚本的第一个参数$2是传递给该shell脚本的第二个参数$@是传给脚本的所有参数的列表$#是传给脚本的参数个数
Linux系统bash里定义的路径/tmp/$$是什么意思?
/tmp就是放临时文件的地方.每次关机会清楚其中的内容.也可以把自己些的脚本或程序中产生的临时文件放在这里,就不用自己手动清除了.
linux位置变量用法?
Linux位置变量用法,$1代表第一个参数,$2代表第二个参数,$3代表第三个参数,以此类推,$*代表参数的个数。