小编Ken*_*oom的帖子

测试一个glob是否在bash中有任何匹配

如果我想检查是否存在单个文件,我可以使用test -e filename或测试它[ -e filename ].

假设我有一个glob,我想知道是否存在名称与glob匹配的文件.glob可以匹配0个文件(在这种情况下我不需要做任何事情),或者它可以匹配1个或多个文件(在这种情况下我需要做一些事情).如何测试glob是否有匹配?(我不关心有多少匹配,如果我能用一个if语句而没有循环(仅仅因为我发现最可读)这样做是最好的.

(test -e glob*如果glob匹配多个文件,则失败.)

bash glob

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

库未加载:尝试使用mysql2 gem在OS X 10.6上运行'rails server'时出现libmysqlclient.16.dylib错误

我一直在努力解决这个问题.

我在Snow Leopard机器上安装了Rails 3,gem,mysql.一切顺利,直到我创建了我的第一个项目并试图运行

rails server
Run Code Online (Sandbox Code Playgroud)

运行这个我得到:

jontybrook$ rails server
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle: dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.16.dylib (LoadError)
  Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
  Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
    from /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2.rb:7
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:64:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:62:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler/runtime.rb:51:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.7/lib/bundler.rb:112:in `require'
    from /Users/jontybrook/Dropbox/CODING/simple_cms/config/application.rb:7
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:28:in `require'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:28
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:27:in `tap'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:27
    from script/rails:6:in `require'
    from script/rails:6
jontybrook$ 
Run Code Online (Sandbox Code Playgroud)

据我所知,问题在于mysql2 gem.MySQL似乎运行正常,我的Gemfile引用了mysql2,我的database.yml文件似乎还可以.

错误提到

Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
Run Code Online (Sandbox Code Playgroud)

但是

jontybrook$ cd …
Run Code Online (Sandbox Code Playgroud)

mysql rubygems ruby-on-rails webrick

206
推荐指数
10
解决办法
10万
查看次数

如何在Android中使用自定义权限?

我有两个申请.

一个是宣布许可和单身Activity:

部分的AndroidManifest.xml

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:permission="your.namespace.permission.TEST" >
    <activity
        android:name=".DeclaringPermissionActivity"
        android:label="@string/app_name" >

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

        <intent-filter> 
         <action android:name="android.intent.action.VIEW" /> 
         <category android:name="android.intent.category.DEFAULT" /> 
         <category android:name="android.intent.category.BROWSABLE" /> 
         <data android:scheme="myapp"
             android:host="myapp.mycompany.com" /> 
        </intent-filter> 
    </activity>
</application>
Run Code Online (Sandbox Code Playgroud)

第二个声明是使用权限

部分的AndroidManifest.xml

<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="your.namespace.permission.TEST" />

<application
Run Code Online (Sandbox Code Playgroud)

部分Activity:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("myapp://myapp.mycompany.com/index")));
}
Run Code Online (Sandbox Code Playgroud)

我正在安装应用程序声明权限,然后我运行第二个应用程序.

结果我得到安全异常:

 01-11 09:46:55.249: E/AndroidRuntime(347): java.lang.RuntimeException: Unable to start activity ComponentInfo{your.namespace2/your.namespace2.UsingPErmissionActivity}: java.lang.SecurityException: Permission Denial: starting Intent …
Run Code Online (Sandbox Code Playgroud)

permissions android android-manifest

57
推荐指数
3
解决办法
7万
查看次数

当我除以零时如何获得NaN

当我在Python中进行浮点除法时,如果我除以零,我得到一个例外:

>>> 1.0/0.0
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ZeroDivisionError: float division
Run Code Online (Sandbox Code Playgroud)

我真的很想得到NaNInf代替(因为NaN或者Inf将通过我的计算的其余部分正确传播而不是杀死我的程序).

我怎样才能做到这一点?

python

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

Ruby中的STDIN和$ stdin有什么区别?

Ruby有两种引用标准输入的方法:STDIN常量和$stdin全局变量.

除了我可以分配一个不同的IO对象,$stdin因为它不是一个常量(例如在我的孩子中重新定向IO之前),STDIN和之间的区别是$stdin什么?我什么时候应该在我的代码中使用每个?

如果我重新分配$stdin,它会影响STDIN吗?

这也适用于STDOUT/ $stdoutSTDER/ $stderr

ruby stdin

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

为什么我们使用if,否则如果body是return语句而不是if if block

我一直习惯使用if,else-if语句而不是多个if语句.

例:

int val = -1;
if (a == b1) {
   return c1;
} else if (a == b2) {
   return c2;
} ...
...
} else {
   return c11;
}
Run Code Online (Sandbox Code Playgroud)

它与例2相比如何:

if (a == b1) {
   return c1;
}
if (a == b2) {
   return c2;
}
....

if (a == b11) {
   return c11;
}
Run Code Online (Sandbox Code Playgroud)

我知道功能明智,他们是一样的.但是,如果不这样做,最好的做法是 - 如果,不是吗?当我指出他可以用不同的方式构建代码库以使其更清晰时,它由我的一个朋友提出.这对我来说已经习惯了很长时间,但我从未问过为什么.

c++ java

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

导致std :: bad_function_call的原因是什么?

我已经看到了一些 问题,这指的是std::bad_function_call例外,但一直没能谷歌搜索是什么原因导致这个例外,找出任何.

什么样的行为应该导致这个例外?你能给我一些没有其他语义问题的最小例子吗?

c++ lambda exception c++11

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

Clojure的代理人如何与Scala的演员比较?

我在Scala(源代码)(Scala 2.8 RC7)和Clojure(源代码)(Clojure 1.1)中编写了一个环网络拓扑模拟,用于比较Actors和Agents.

虽然Scala版本显示几乎恒定的消息交换率,因为我将网络中的节点数从100增加到1000000,但Clojure版本显示的消息速率随着节点数量的增加而减少.同样在单次运行期间,Clojure版本中的消息速率随着时间的推移而降低.

所以我很好奇Scala的演员如何与Clojure的特工比较?Agent本身是否比Actors更少并发或代码编写效率低(autoboxing?)?

PS:我注意到Scala版本中的内存使用量随着节点数量的增加(100万个节点> 500 MB)而增加很多,而Clojure版本使用的内存要少得多(100万个节点约100 MB).

编辑:

这两个版本都在相同的JVM上运行,并且所有JVM参数和Actor和Agent配置参数都设置为默认值.在我的机器上,Scala版本为100到100万个节点提供了大约5000个消息/秒的消息速率,而Clojure版本以100个节点的60000消息/秒开始,对于100万个节点减少到200个消息/秒.

编辑2

事实证明我的Clojure版本编写效率低下.我将nodes集合的类型更改listvector,现在它显示了一致的行为:100个节点100000消息/秒,100000个节点80000消息/秒.所以Clojure Agent似乎比Scala Actors更快.我也更新了链接的来源.

concurrency scala clojure agents actor

27
推荐指数
1
解决办法
5394
查看次数

在python/bash脚本中编写Git钩子

我最近需要编写git hooks,用于引用特定票证的所有提交.

我希望有一个地方可以开始学习.pro git书中的所有内容都是用Ruby编写的.由于Ruby不是我强大的西装,任何人都可以分享有关用其他语言编写的git hook的教程吗?(我特别喜欢Python或Bash脚本.)

git githooks

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

C++预处理器#define-ing a keyword.标准是否符合标准?

这个关于bool和1的问题的评论中帮助解决正在进行的辩论:

符合标准的C++预处理器是否允许#define用户重新定义语言关键字?如果是这样,符合标准的C++预处理器是否允许这样做?

如果C++程序重新定义了一个语言关键字,那么该程序本身是否符合标准?

c++ c-preprocessor

20
推荐指数
3
解决办法
4458
查看次数