小编Ori*_*Ori的帖子

使用sed和grep/egrep进行搜索和替换

我正在使用egrep -R一个包含大约10个联合的正则表达式,所以像: .jpg | .png | .gif等.这很好用,现在我想替换所有找到的字符串.bmp

我在想类似的东西

egrep -lR "\.jpg|\.png|\.gif" . | sed "s/some_expression/.jpg/" file_it_came_form
Run Code Online (Sandbox Code Playgroud)

所以这里的问题是我如何做一个类似的联合正则表达式sed,如何告诉它将更改保存到它从中获取输入的文件.

regex grep sed

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

foldl是尾递归的,那么foldr如何比foldl运行得更快呢?

我想测试foldl vs foldr.从我所看到的,你应该使用foldl over foldr,因为尾部递归优化.

这是有道理的.但是,运行此测试后,我很困惑:

foldr(使用时间命令时需要0.057秒):

a::a -> [a] -> [a]
a x = ([x] ++ )

main = putStrLn(show ( sum (foldr a [] [0.. 100000])))
Run Code Online (Sandbox Code Playgroud)

foldl(使用time命令时需要0.089s):

b::[b] -> b -> [b]
b xs = ( ++ xs). (\y->[y])

main = putStrLn(show ( sum (foldl b [] [0.. 100000])))
Run Code Online (Sandbox Code Playgroud)

很明显,这个例子很简单,但我很困惑为什么foldr击败foldl.这不应该是foldl获胜的明显案例吗?

optimization haskell tail-recursion combinators fold

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

更改文件的chmod而不是目录

我需要使用chmod将所有文件递归更改为664.我想跳过这些文件夹.我在考虑做这样的事情

ls -lR | grep ^-r | chmod 664
Run Code Online (Sandbox Code Playgroud)

这不起作用,我假设因为我无法管道进入chmod任何人都知道一个简单的方法来做到这一点?

谢谢

unix grep chmod

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

cout <<如何实际工作?

我想知道如何std::cout使用<<它.

我的主要困惑在于是否std::cout作为某种事物的实例.基本上,如何<<定义?如果我为自定义类执行此操作,我需要某种类型的实例...

我可以看到它实现它是一种带有无效指针的东西,但我希望看到它的实际方式.

这里有人知道吗?谢谢

c++ cout

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

避免if语句

我今天正在考虑面向对象的设计,我想知道你是否应该避免if语句.我的想法是,在任何需要if语句的情况下,您只需创建两个实现相同方法的对象.这两个方法实现只是原始if语句的两个可能的分支.

我意识到这似乎是极端的,但似乎你可以尝试在某种程度上争论它.有什么想法吗?

编辑

哇,没多久.我想这太极端了.是否有可能说,在OOP下你应该期望更少的陈述?

第二次编辑

那么:一个根据其属性确定方法实现的对象.也就是说,您可以someMethod()通过两种方式实现并指定一些限制.在任何时候,对象都将根据其属性路由到正确的方法实现.所以在if(x > 5)只有两个依赖x属性的方法的情况下

oop if-statement

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

MAMP上的php邮件

我需要使用PHP的邮件测试一些脚本.我希望能够最终在本地工作.我正在使用MAMP.有没有办法在不安装任何第三方软件的情况下执行此操作?

我已经对此做了一些搜索,但没有发现任何吸引人的东西.

谢谢

php email testing mamp

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

使用svn进行SSL协商失败

我正在运行一个接受https请求的服务器.我已经生成了自己的证书.当在firefox中访问该站点时,我得到了未知的证书错误,但这没关系.这(我认为)表明端口转发等工作.

我正在尝试使用svn.在服务器上使用svn(但使用外部ip)时,它可以工作.我再次获得证书是未知的,但我不在乎.

在mac OS XI上使用svn时获取

SSL协商失败:SSL错误代码-1/1/336032856

我在google上发现了几个关于这个的帖子,但是他们都说这是openssl 0.9.8版本的一个bug,并且使用更高的东西应该修复它.

我目前正在使用openssl 1.0.0c.我不知道出了什么问题.我还检查了httpd中的错误日志,没有出现任何问题.

对此有任何想法都会有所帮助.

谢谢

svn security ssl openssl

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

Rails(ActiveRecord)多对多表

我有两个模型,用户和组.每个组可以有许多用户,每个用户可以在许多组中.

我目前有一些简单的东西:

用户:

has_many    :groups
Run Code Online (Sandbox Code Playgroud)

组:

has_many    :users
Run Code Online (Sandbox Code Playgroud)

所以我有一个groups_users表,它只是用group_id和user_id创建行.我想在此添加另一列(我有),问题是如何在不使用自定义SQL调用的情况下从模型中访问它?在组模型中,我可以使用self.users,在用户中我可以使用self.groups

有没有办法从用户模型更改此表中的第三列?

对不起,如果这令人困惑,请告知此事

ruby activerecord many-to-many ruby-on-rails

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

将c ++编译成"真正的"程序

我知道如何使用g ++和所有这些来编译c ++程序.我的问题是,如果我有一些依赖于各种库的代码,我怎样才能将它编译成一个我可以发送给任何人的简单可执行文件.为此,我很乐意将其保留在os x上.

我想知道如何编译一个"真正的"程序,而不仅仅是我可以在本地运行的可执行程序.我试过谷歌搜索,但没有找到太多.

我必须使用安装软件吗?我知道在Windows中你可以制作一些使用常见DLL文件的简单.exe东西.

c++ macos packaging compilation g++

7
推荐指数
1
解决办法
503
查看次数

CMake的可移植可执行文件

我正在开发一台我没有管理权限的Windows机器上.我想使用CMake进行编译,由于管理限制,我不能简单地下载和安装它.

我还想避免从源代码编译CMake(如果可能的话).是否有可用于Windows的便携式二进制文件,只允许使用CMake?

binary cmake portable-executable

7
推荐指数
1
解决办法
5865
查看次数