VSCode配置ruby开发环境

Python028

VSCode配置ruby开发环境,第1张

然后给vscode添加一个config

设置launch.json

把echo $PATH的结果放到env的PATH里

可能还需要下面的配置

英国出身很好的家庭,多会给女儿取Elisabeth, Margaret, Victoria之类的名字。所以Maggie作为Margaret的昵称还是不错的。英王室女成员的名字貌似来来去去只有这几个,呵呵。

英国很多女孩子叫Emma,多到让人受不了,就像美国的Ashley一样。Christine和Christina也是欧美国家常见的女子名,我不是很了解,不过貌似也多是出身比较良好的女孩子用的名字,而且据说很多还跟基督教有关(不懂啊)。千万不要用什么lily, lulu, lucy等等,跟人家伊丽莎白玛格丽特维多利亚一比,感觉出身阿地位阿,差了一大截。Lizzie还好,是Elisabeth的昵称。所以一直很疑心茜茜公主的名字一定有什么讲头。

个人感觉听起来比较浪漫的英文名字有Brenda, Amanda, Elaine(前阵子大热的法文歌就用了这个名字),Ruby也挺不错,不过很久以前看过一个帖子,是台湾人总结出来的使用同一英文名的人群的共同特点,其中说到叫Ruby的通常都是女强人,等下搜出来帮你贴上来。echo我也很喜欢,我的一个好朋友因为非常喜欢三毛,就用了这个名字,我叫惯了,觉得满好听的。Annabell也很好听。

Venetia这个名字一开始我不知道怎么念,后来听英国人念了,才发现挺好听的。

其实我楼主根据自己的中文名字来找一个发音相近的英文名。因为我香港的朋友告诉我,他们很多香港人用英文名比中文名的时候更多,所以父母给他们的英文名字也都很讲究的,通常都会起一个发音跟他们名字的粤语发音相近的英文名。举几个例子,佩怡——Peggy,戴美华——Diana,可儿(粤语发音类似于活以)——Chloe,苏怡——Zoe(香港人发z的音不标准,仍然像s),想来梁咏琪的Gigi也应该是谐音她的“琪”字。

以下为转发内容,参见http://bbs.chinaunix.net/viewthread.php?tid=956296

看一下你是哪个英文名?

某个外国朋友说到他觉得中国人(特别是香港和台湾人)在取英文名字时有一种现象,这是几个外国朋友发现的总结一下

叫 michael的通常都很自负觉得自己受到众人欢迎,有点花痴

叫 gary的通常都很弱智 常做白痴的事情

叫 jessica的通常都很精明算的很精讲话永远都有官方说法

叫 ruby 的也是蛮有自信的女强人多

叫 vincent的通常官位都蛮大的也通常帅

叫 peggy的没什 多半是名字里有个佩字

叫 larry 的通常长的黑黑阴阴的

叫jennifer的通常都很机车,嘴巴很坏

叫 jack 的看起来都很老实?

叫 dick 的很无聊和很好色

叫 irene 的通常都是知性美女

叫 claire 的甜姐儿多

叫 robert的通常头都有点秃(要小心喔!)

叫 kenny 的通常调皮捣蛋

叫 catherine 的大肥人多

叫 anita 的通常小鼻子小眼睛

叫 terry 的通常有点自大

叫 vivian的通常都很娇气,身材很好不过我都叫他们“肥肥安“

叫 ivy 的通常很爱打人

叫 rita 的精明的美女

叫 jackson 的通常有点自以为是

叫 eric 的通常是有自信的臭屁王

叫 simon 的通常是有自傲的人

叫 james 的通常都有点自恋

叫 sam 的通常是快乐的要宝王

叫 hank 的通常是温和的有点迟疑的

叫 sarah 的通常是蛮傻瓜

叫 kevin 的通常长的蛮帅

叫 andy 的通常自认长的蛮帅

叫 angel 的有点黏人的小女人

叫 golden 的通常爱喝酒

叫 jimmy 的通常是矮矮胖胖的

叫 docata 的通常都很自恋很自大

叫 tom 的通常很乡土

叫 jason 的通常带有一点邪气

叫 paul 的通常不是gay 就是很有钱

三个PHP调用系统命令函数的区别与联系

我们在执行linux系统的shell命令时,会用到PHP调用系统命令函数来实现。那么在这些函数中,主要包括了system(),exec(),passthru()这三个经常用于外部命令调用的函数。

虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的:

system() 输出并返回最后一行shell结果。

exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。

passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。

相同点:都可以获得命令执行的状态码

在PHP中调用外部命令,可以用如下三种方法来实现:

用PHP提供的专门函数

PHP提供共了3个专门的执行外部命令的PHP调用系统命令函数:system(),exec(),passthru()。

system()

原型:string system (string command [, int return_var])

system()函数很其它语言中的差不多,这个PHP调用系统命令函数执行给定的命令,输出和返回结果。第二个参数是可选的,用来得到命令执行后的状态码。

例子:

system("/usr/local/bin/webalizer/webalizer")

exec()

原型:string exec(string command [, string array [, int return_var]])

exec()函数与system()这个PHP调用系统命令函数类似,也执行给定的命令,但不输出结果,而是返回结果的最后一行。虽然它只返回命令结果的最后一行,但用第二个参数array 可以得到完整的结果,方法是把结果逐行追加到array的结尾处。所以如果array不是空的,在调用之前最好用unset()最它清掉。只有指定了第二个参数时,才可以用第三个参数,用来取得命令执行的状态码。

例子:

exec("/bin/ls -l")

exec("/bin/ls -l", $res)

exec("/bin/ls -l", $res, $rc)

passthru()

原型:void passthru (string command [, int return_var])

passthru ()只调用命令,这个PHP调用系统命令函数不返回任何结果,但把命令的运行结果原样地直接输出到标准输出设备上。所以passthru()函数经常用来调用象pbmplus (Unix下的一个处理图片的工具,输出二进制的原始图片的流)这样的程序。同样它也可以得到命令执行的状态码。

例子:

header("Content-type: image/gif")

passthru("./ppmtogif hunte.ppm")

六种用ruby调用执行shell命令的方法

碰到需要调用操作系统shell命令的时候,Ruby为我们提供了六种完成任务的方法:

1.Exec方法:

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

例子:

$ irb

>>exec 'echo "hello $HOSTNAME"'

hello nate.local

$

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

2.System方法。

Kernel#system方法操作命令同上, 但是它是运行一个子shell来避免覆盖当前进程。如果命令执行成功则返回true,否则返回false。

$ irb

>>system 'echo "hello $HOSTNAME"'

hello nate.local

=>true

>>system 'false'

=>false

>>puts $?

256

=>nil

>>

3.反引号(Backticks,Esc键下面那个键)

$ irb

>>today = `date`

=>"Mon Mar 12 18:15:35 PDT 2007n"

>>$?

=>#<Process::Status: pid=25827,exited(0)>

>>$?.to_i

=>0

这种方法是最普遍的用法了。它也是运行在一个子shell中。

4.IO#popen

$ irb

>>IO.popen("date") { |f| puts f.gets }

Mon Mar 12 18:58:56 PDT 2007

=>nil

5.open3#popen3

$ irb

>>stdin, stdout, stderr = Open3.popen3('dc')

=>[#<IO:0x6e5474>, #<IO:0x6e5438>, #<IO:0x6e53d4>]

>>stdin.puts(5)

=>nil

>>stdin.puts(10)

=>nil

>>stdin.puts("+")

=>nil

>>stdin.puts("p")

=>nil

>>stdout.gets

=>"15n"

6.Open4#popen4

$ irb

>>require "open4"

=>true

>>pid, stdin, stdout, stderr = Open4::popen4 "false"

=>[26327, #<IO:0x6dff24>, #<IO:0x6dfee8>, #<IO:0x6dfe84>]

>>$?

=>nil

>>pid

=>26327

>>ignored, status = Process::waitpid2 pid

=>[26327, #<Process::Status: pid=26327,exited(1)>]

>>status.to_i

=>256