良玉的博客 点点滴滴,积水成河_良玉的博客_页游、手游linux运维工程师之路

BASH Shell的特殊变量

在shell中,除了可以使用环境变量外,还可以使用专门由shell使用的shell特殊变量。

与环境变量不同的是,用户只能引用shell特殊变量,而不能设置这些变量的值。
shell特殊变量都由美元符$后随单个字符组成。


阅读全文...

shell中$(( )) 与 $( ) 还有${ }的区别

$( ) 与 ` ` (反引号)
在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的。

所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行:
* 完成引号里的命令行,然后将其结果替换出来,再重组命令行。
例如:
[code]$ echo the last sunday is $(date -d "last sunday" +%Y-%m-%d)[/code]


阅读全文...

标签: shell特殊

作者:良玉 分类:Shell 浏览:374 评论:0

python调用Shell脚本

python调用Shell脚本,有三种方法:os.system(cmd)或os.popen(cmd),前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的输出内容。还有commands 模块。实际使用时视需求情况而选择。

现假定有一个shell脚本test.sh:


阅读全文...

标签: pythonshell

作者:良玉 分类:Python 浏览:2344 评论:0

ruby调用执行shell命令的方法

1.Exec方法:

    Kernel#exec方法通过调用指定的命令取代当前进程:

 例子:

     $ irb
      >> exec 'echo "hello $HOSTNAME"'
         hello nate.local
      $
值得注意的是,exec方法用echo命令来取代了irb进程从而退出了irb。主要的缺点是,你无法从你的ruby脚本里知道这个命令是成功还是失败。


阅读全文...

shell shift

shift命令会重新分配位置参数,其实就是把所有的位置参数都向左移动一个位置。

比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1、$2、$3丢弃,$0不移动。不带参数的shift命令相当于shift 1。
我们知道,对于位置变量或命令行参数,其个数必须是确定的,或者当 Shell 程序不知道其个数时,可以把所有参数一起赋值给变量$*。若用户要求 Shell 在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在 $1 后为 $2,在 $2 后面为 $3 等。在 shift 命令执行前变量 $1 的值在 shift 命令执行后就不可用了。


阅读全文...

标签: shellshift

作者:良玉 分类:Shell 浏览:466 评论:0

当while里有ssh,注意点

需要读取一个文本,次文本每一行包含一个IP在while循环中使用ssh,但ssh完第一行后就退出了,如何避免自动读取一行就跳出while循环,此文将详细解释其原因。 
 
    最近在写一个自动更新的shell,可是发现如果在使用while循环从一个文件中读取ip地址,然后访问就只能读取第一行纪录。代码如下: 

while read LINE


阅读全文...

标签: whileshellssh

作者:良玉 分类:Shell 浏览:400 评论:0

awk中使用的shell命令

awk中使用的shell命令,有2种方法:

一。使用所以system()

awk 'BEGIN {system("echo \"Input your name:\\c\""); getline d;print "\nYour name is",d,"\b!\n"}'

用("")和\"   \"   \\转义。

 


阅读全文...

标签: awkshell

作者:良玉 分类:Shell 浏览:637 评论:0

awk快速获取ip地址

linux-dduk:~ # time ifconfig eth0|grep 'inet addr'|awk -F ":" '{print $2}'|awk '{print $1}' 
192.168.12.152

real    0m0.010s
user    0m0.004s

sys     0m0.004s


阅读全文...

标签: awkshellip

作者:良玉 分类:Shell 浏览:455 评论:0