小编P S*_*ved的帖子

在Ruby中将字符串转换为符号

符号通常表示为这样

:book_author_title
Run Code Online (Sandbox Code Playgroud)

但如果我有一个字符串:

"Book Author Title"
Run Code Online (Sandbox Code Playgroud)

在rails/ruby​​中是否有内置的方式将其转换为符号,我可以使用: 符号而不仅仅执行原始字符串正则表达式替换?

ruby ruby-on-rails

226
推荐指数
6
解决办法
17万
查看次数

如何将shell命令应用于命令输出的每一行?

假设我有一些命令的输出(例如ls -1):

a
b
c
d
e
...
Run Code Online (Sandbox Code Playgroud)

我想echo依次对每个命令应用一个命令(比如说).例如

echo a
echo b
echo c
echo d
echo e
...
Run Code Online (Sandbox Code Playgroud)

在bash中最简单的方法是什么?

bash

177
推荐指数
6
解决办法
14万
查看次数

GNU中的递归通配符make?

自从我使用以来已经有一段时间了make,所以请耐心等待......

我有一个flac包含.FLAC文件的目录.我有一个相应的目录,mp3包含MP3文件.如果FLAC文件比相应的MP3文件(或相应的MP3文件不存在)更新,那么我想运行一堆命令将FLAC文件转换为MP3文件,然后复制标签.

踢球者:我需要flac递归搜索目录,并在mp3目录中创建相应的子目录.目录和文件名称中可以包含空格,并以UTF-8命名.

而且我想make用来驱动它.

makefile gnu-make

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

Python:我怎么知道方法调用可能抛出哪些异常

有没有办法知道(在编码时)执行python代码时会遇到哪些异常?我最终会在90%的时间内捕获基本Exception类,因为我不知道可能抛出哪种异常类型(并且不要告诉我阅读文档.很多时候,异常可以从深层传播.文档未更新或更正的时间).有什么工具可以检查吗?(比如通过阅读python代码和库)?

python exception

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

为什么我的C malloc断言失败了?

我正在实现一个除法和征服多项式算法,所以我可以将它与OpenCL实现进行基准测试,但我无法开始malloc工作.当我运行程序时,它会分配一堆东西,检查一些东西,然后发送size/2给算法.然后,当我malloc再次点击它时,它会吐出这个:

malloc.c:3096:sYSMALLOc:断言`(old_top ==(((mbinptr)(((char*)&((av) - > bins [((1) - 1)*2])) - __builtin_offsetof(struct malloc_chunk,fd))))&& old_size == 0)|| ((unsigned long)(old_size)> =(unsigned long)(((__ builtin_offsetof(struct malloc_chunk,fd_nextsize))+((2*(sizeof(size_t))) - 1))~~((2*(sizeof) (size_t))) - 1)))&&((old_top) - > size&0x1)&&((unsigned long)old_end&pagemask)== 0)'失败.中止

有问题的一行是:

int *mult(int size, int *a, int *b) {
    int *out,i, j, *tmp1, *tmp2, *tmp3, *tmpa1, *tmpa2, *tmpb1, *tmpb2,d, *res1, *res2;
    fprintf(stdout, "size: %d\n", size);

    out = (int *)malloc(sizeof(int) * size * 2);
}
Run Code Online (Sandbox Code Playgroud)

我用a检查了大小fprintf,它是一个正整数(此时通常为50).我尝试malloc用普通号码打电话,但我仍然得到错误.我只是对正在发生的事情感到难过,到目前为止我发现的谷歌没有任何帮助.

有什么想法发生了什么?我正在试图弄清楚如何编译一个更新的GCC,如果它是编译器错误,但我真的怀疑它.

c malloc gcc assertion

71
推荐指数
3
解决办法
11万
查看次数

如何在pthreads中增加线程优先级?

我在Linux中使用pthread.我想通过设置参数来增加线程优先级sched_param.priority.但是,我无法从网上找到关于我可以设置的线程优先级范围或线程优先级描述的信息.

另外,我想了解相对线程优先级,因为我不希望将线程优先级设置得太高并导致操作系统停止.有人可以帮我吗?

c++ linux multithreading pthreads

56
推荐指数
3
解决办法
9万
查看次数

如何将参数传递给Linux Bash脚本?

我有一个Linux bash脚本'myshell'.我希望它读取两个日期作为参数,例如:myshell date1 date2.我是一名Java程序员,但不知道如何编写脚本来完成这项工作.

脚本的其余部分是这样的:

sed "s/$date1/$date2/g" wlacd_stat.xml >tmp.xml
mv tmp.xml wlacd_stat.xml
Run Code Online (Sandbox Code Playgroud)

linux bash shell

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

强制GCC通知共享库中未定义的引用

我有一个与另一个(第三方)共享库链接的共享库.然后在我的应用程序中使用dlopen加载我的共享库.所有这一切都很好(假设文件在正确的路径等).

现在,问题是当我链接我的库时,我甚至不需要指定链接第三方共享库.GCC接受它而不报告有关未定义引用的错误.那么,问题; 我如何强制GCC通知我未定义的引用

如果我将库更改为(临时)可执行文件,则会获得未定义的引用(当不向链接器提供库时).(如果我指定它,工作正常.)

即,完成以下操作:

g++ -fPIC -shared -o libb.so b.o 
g++ -fPIC -shared -o liba.so a.o
g++ -o a.exe a.cpp 
Run Code Online (Sandbox Code Playgroud)

第二行没有给出错误,第三行抱怨未定义的引用.

示例代码:

啊:

class a
{
public:
    void foobar();
};
Run Code Online (Sandbox Code Playgroud)

a.cpp:

#include "a.h"
#include "b.h"

void a::foobar()
{
    b myB;
    myB.foobar();
}

int main()
{
    a myA; myA.foobar();
}
Run Code Online (Sandbox Code Playgroud)

BH:

class b
{
public:
    void foobar();
};
Run Code Online (Sandbox Code Playgroud)

b.cpp:

#include "b.h"

void b::foobar()
{
}
Run Code Online (Sandbox Code Playgroud)

c++ shared-libraries dynamic-linking

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

Makefile中的通配符目标

如何压缩以下Makefile目标?

$(GRAPHDIR)/Complex.png: $(GRAPHDIR)/Complex.dot
        dot $(GRAPHDIR)/Complex.dot -Tpng -o $(GRAPHDIR)/Complex.png

$(GRAPHDIR)/Simple.png: $(GRAPHDIR)/Simple.dot
        dot $(GRAPHDIR)/Simple.dot -Tpng -o $(GRAPHDIR)/Simple.png

$(GRAPHDIR)/IFileReader.png: $(GRAPHDIR)/IFileReader.dot
        dot $(GRAPHDIR)/IFileReader.dot -Tpng -o $(GRAPHDIR)/IFileReader.png

$(GRAPHDIR)/McCabe-linear.png: $(GRAPHDIR)/McCabe-linear.dot
        dot $(GRAPHDIR)/McCabe-linear.dot -Tpng -o $(GRAPHDIR)/McCabe-linear.png

graphs: $(GRAPHDIR)/Complex.png $(GRAPHDIR)/Simple.png $(GRAPHDIR)/IFileReader.png $(GRAPHDIR)/McCabe-linear.png
Run Code Online (Sandbox Code Playgroud)

-

GNU Make 3.81.

makefile gnu-make

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

限制程序在Linux中运行的时间

在Linux中,我想运行一个程序,但只能在有限的时间内运行,比如1秒钟.如果程序超过此运行时间,我想终止该过程并显示错误消息.

linux

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