Tag: unix

将两个共享库链接到一些相同的符号

我正试图链接两个不同的共享库。 这两个库定义了一些共享名称但具有不同实现的符号。 我似乎无法find一种方法来使每个图书馆都使用自己的实施。 例如,这两个库定义了一个全局函数bar() ,它们都在内部调用。 库从foo1()调用它,而库二从foo2()调用它。 Lib1.so: T bar T foo1() // calls bar() Lib2.so: T bar T foo2() // calls bar() 如果我将我的应用程序与Lib1.so和Lib2.so连接起来,即使在调用foo2()时也会调用Lib1.so中的bar实现。 另一方面,如果我将我的应用程序链接到Lib2.so,然后是Lib1.so,那么bar总是从Lib2.so中调用。 有没有办法让图书馆总是比其他图书馆更喜欢自己的实现?

Execute Shell如何/何时在Jenkins中将构build标记为失败?

我在寻找这个答案时find的恐怖故事… 好的,我有一个.sh脚本,几乎所有的Jenkins都应该这样做: 检查SVN的来源 build立项目 部署项目 自己清理 所以在Jenkins中,我只需要通过在Execute Shell命令中运行脚本来“build立”项目。 脚本运行(下载源代码,项目build立/部署),但是它将构build标记为失败:构build步骤'执行shell'标记构build失败即使脚本已成功运行! 我尝试closures脚本: 退出0(仍然标志为失败) 出口1(如预期的那样将其标记为失败) 根本没有退出命令(标记为失败) 何时,如何以及为什么Execute Shell将我的构build标记为失败?

从脚本更改当前目录

是否有可能从脚本更改当前目录? 我想为bash中的目录导航创build一个util。 我创build了如下所示的testing脚本: #!/bin/bash cd /home/artemb 当我从bash shell执行脚本时,当前目录不会改变。 是否有可能从脚本中更改当前shell目录?

Unix命令行JSONparsing器?

任何人都可以推荐一个Unix(select你的味道)JSONparsing器,可以用来反思从pipe道中的JSON响应值?

是否有一个Unix工具预加时间戳到标准input?

我最终在Python中为此写了一个快速的小脚本,但是我想知道是否有一个实用程序可以给文本添加文本,在文本中添加一些文本 – 在我的具体情况下是时间戳。 理想情况下,使用会是这样的: cat somefile.txt | prepend-timestamp (在你回答sed之前,我试过这个: cat somefile.txt | sed "s/^/`date`/" 但是,执行sed时只会计算一次date命令,所以相同的时间戳被错误地添加到每行。

使用SED删除空行

我正在尝试删除使用sed的空行 sed '/^$/d' 但我没有运气。 例如我有这样的话: xxxxxx yyyyyy zzzzzz 我想它是这样的: xxxxxx yyyyyy zzzzzz 这个代码应该是什么?

如何删除SSH密钥的密码而不必创build新密钥?

在我的笔记本电脑上创build一个新的SSH密钥时,我设置了密码。 但是,现在我意识到,当你试图在一个小时内通过SSH多次提交( Git和SVN )到远程位置时,这是非常痛苦的。 我能想到的一个方法是,删除我的SSH密钥并创build新的。 有没有办法删除密码,同时仍然保持相同的密钥?

如何将subprocess调用传递给文本文件?

subprocess.call(["/home/myuser/run.sh", "/tmp/ad_xml", "/tmp/video_xml"]) 现在我有一个脚本,我跑。 当我运行它,它击中这条线,它开始打印的东西,因为run.sh打印在它。 我如何将这个pipe道文本文件? (如果可能,也打印)

.so和.dylib在osx上有什么区别?

.dylib是OSX上的dynamic库扩展,但是当我不能/不应该使用传统的unix .so共享对象时,我从来没有清楚过。 我有一些问题: 在概念层面,.so和.dylib之间的主要区别是什么? 什么时候可以/应该使用哪一种? 编译技巧和提示(例如,replacegcc -shared -fPIC,因为这在osx上不起作用)

如何将文件读入shell中的variables?

我想读取一个文件并将其保存在variables中,但我需要保留该variables,而不是只打印出文件。 我该怎么做? 我已经写了这个脚本,但它不是我所需要的: #!/bin/sh while read LINE do echo $LINE done <$1 echo 11111———– echo $LINE 在我的脚本中,我可以将文件名作为参数,例如,如果文件包含“aaaa”,则会打印出以下内容: aaaa 11111—– 但是这只是将文件打印到屏幕上,我想把它保存到一个variables! 有没有一个简单的方法来做到这一点?