小编And*_*imm的帖子

OS X是否等同于/ dev/shm?

OS X(特别是Snow Leopard)是否具有与Linux相同的(某些版本)/dev/shm,即可以在不必触及硬盘的情况下写入和读取文件的内容?

linux macos ipc ramdisk

40
推荐指数
1
解决办法
1万
查看次数

仅使用proc获取本地网络接口地址?

如何仅使用proc获取所有网络接口的(IPv4)地址?经过一番广泛调查后,我发现了以下内容:

  1. ifconfig利用SIOCGIFADDR,需要打开套接字并提前了解所有接口名称.它也没有记录在Linux上的任何手册页中.
  2. proc包含/proc/net/dev,但这是一个接口统计信息列表.
  3. proc包含/proc/net/if_inet6,这正是我所需要的,但对于IPv6.
  4. 通常接口很容易找到proc,但实际地址很少使用,除非明确部分连接.
  5. 有一个系统调用getifaddrs,这是一个非常"神奇"的功能,你期望在Windows中看到它.它也在BSD上实现.然而,它不是非常面向文本的,这使得很难使用非C语言.

python linux networking ipv4 procfs

39
推荐指数
5
解决办法
4万
查看次数

如何在Ruby中创建私有类常量

在Ruby中,如何创建私有类常量?(即在课堂内可见但不在课堂外可见的)

class Person
  SECRET='xxx' # How to make class private??

  def show_secret
    puts "Secret: #{SECRET}"
  end
end

Person.new.show_secret
puts Person::SECRET # I'd like this to fail
Run Code Online (Sandbox Code Playgroud)

ruby access-specifier class-constants

38
推荐指数
3
解决办法
1万
查看次数

我是否需要在裸仓库上运行git gc?

man git-gc 没有一个明显的答案,我也没有任何运气与谷歌(虽然我可能刚刚使用错误的搜索条款).

我知道您应该偶尔git gc在本地存储库上运行以修剪悬空对象并压缩历史记录等等 - 但是这是一个容易受到同样问题影响的共享裸存储库吗?

如果重要的是,我们的工作流程是多个开发人员从共享网络驱动器上的裸存储库中取出并推送到存储库."中央"存储库是使用创建的git init --bare --shared.

git git-gc

38
推荐指数
2
解决办法
2万
查看次数

如何在Time.now中添加两周?

如何在Ruby中添加两周到当前的Time.now?我有一个使用DataMapper的小型Sinatra项目,在保存之前,我有一个填充了当前时间PLUS两周的字段,但是根本不能正常工作.任何帮助是极大的赞赏!我收到以下错误:

NoMethodError at /
undefined method `weeks' for 2:Fixnum
Run Code Online (Sandbox Code Playgroud)

以下是模型的代码:

class Job
  include DataMapper::Resource

  property :id,           Serial
  property :position,     String
  property :location,     String
  property :email,        String
  property :phone,        String
  property :description,  Text
  property :expires_on,   Date
  property :status,       Boolean
  property :created_on,   DateTime
  property :updated_at,   DateTime

  before :save do
    t = Time.now
    self.expires_on = t + 2.week
    self.status = '0'
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby time

38
推荐指数
6
解决办法
7万
查看次数

何时在Ruby方法中使用`self.foo`而不是`foo`

这不是Rails特有的 - 我只是以Rails为例.

我在Rails中有一个模型:

class Item < ActiveRecord::Base

  def hello
    puts "Hello, #{self.name}"
  end
end
Run Code Online (Sandbox Code Playgroud)

(假设Item模型(类)有一个叫做的方法name).我什么时候需要使用self.name,何时可以使用name?(例如#{name})

ruby self

37
推荐指数
2
解决办法
4836
查看次数

可以为标签git grep吗?

此问题指定-P允许GNU grep为选项卡grep

grep -P '\t' config/file.txt
Run Code Online (Sandbox Code Playgroud)

但是,使用git grep,我无法弄清楚如何grep选项卡:

git grep '\t' # Looks for files with the letter "t" instead
git grep -P '\t' # Invalid option
git grep -E '\t' # Does the same as without the -E
Run Code Online (Sandbox Code Playgroud)

似乎没有替代你自己的grep计划的选择.我唯一的选择是啜饮整个内容然后在结果上使用GNU grep?

git grep

36
推荐指数
2
解决办法
3289
查看次数

从ruby脚本运行另一个ruby脚本

在ruby中,是否可以指定使用相同的ruby解释器调用另一个ruby脚本,因为原始脚本正在运行?

例如,如果a.rb运行b.rb几次,是否可以替换

system("ruby", "b.rb", "foo", "bar")
Run Code Online (Sandbox Code Playgroud)

喜欢的东西

run_ruby("b.rb", "foo", "bar")
Run Code Online (Sandbox Code Playgroud)

所以,如果你ruby1.9.1 a.rb在原版ruby1.9.1上使用,将在b.rb上使用,但如果你刚用于ruby a.rb原版,ruby将用于b.rb?

我不想使用shebangs,因为我希望能够在不同的计算机上运行,​​其中一些计算机没有/usr/bin/env.

编辑:我没有意思loadrequire类似,但产生新的进程(所以我可以使用多个CPU).

ruby

35
推荐指数
4
解决办法
4万
查看次数

要求'rubygems'

我已经看到了许多Ruby代码示例(例如,http://www.sinatrarb.com/).这需要什么目的?

# require 'rubygems'
require 'sinatra'
get '/hi' do
  "Hello world!"
end
Run Code Online (Sandbox Code Playgroud)

在所有情况下,代码都可以在没有这一行的情

ruby rubygems require

35
推荐指数
3
解决办法
2万
查看次数

为什么下降时范围不起作用?

为什么会(1..5).each迭代1,2,3,4,5,但(5..1)不会?它返回Range.

1.9.2p290 :007 > (1..5).each do |i| puts i end
1
2
3
4
5
 => 1..5
1.9.2p290 :008 > (5..1).each do |i| puts i end
 => 5..1
Run Code Online (Sandbox Code Playgroud)

ruby range

35
推荐指数
3
解决办法
1万
查看次数