Tag: linux

尝试embedded换行variables在bash中

我有 var="abc" for i in $var do p=`echo -e $p'\n'$i` done echo $p 我想要最后一个回显打印 a b c 注意我想让variablesp包含换行符。 我怎么做?

asynchronousshell命令

我真的不能相信我无法find这个在线的解决scheme。 我遇到了一些看起来很相似的东西,但没有什么真正做我想要的东西… 我正在尝试使用shell脚本来启动一个命令。 我不在乎是否/何时/如何/为什么完成。 我想要启动和运行这个进程,但我希望能够立即返回到我的shell中。 希望这一点足够清楚,我可能只是失去了一些令人难以置信的愚蠢

使用find命令但排除两个目录中的文件

我想查找以_peaks.bed结尾的文件,但排除tmp和scripts文件夹中的文件。 我的命令是这样的: find . -type f \( -name "*_peaks.bed" ! -name "*tmp*" ! -name "*scripts*" \) 但它没有工作。 tmp和script文件夹中的文件仍将显示。 有没有人有这个想法?

如何在命令行中通过脚本运行函数?

我有一个脚本,有一些function。 我可以直接从命令行运行一个函数吗? 像这样的东西? myScript.sh func()

linuxdynamic连接器的“无版本信息”错误是什么意思?

在我们的产品中,我们提供了一些dynamic链接到像“libpam”这样的系统库的linux二进制文件。 在某些客户系统上,当程序运行时,我们在stderr上得到以下错误: ./authpam: /lib/libpam.so.0: no version information available (required by authpam) 应用程序运行正常,并执行dynamic库中的代码。 所以这不是一个致命的错误,它只是一个警告。 我认为这是错误来自dynamic链接器,当系统安装库缺less我们的可执行文件预期的东西。 我对dynamic链接过程的内部知识并不了解,并且使用这个主题search并没有什么帮助。 🙁 任何人知道是什么原因造成这个错 …我如何诊断原因? …以及我们如何改变我们的可执行文件,以避免这个问题? 更新:客户升级到最新版本的debian“testing”,发生同样的错误。 所以这不是一个过时的libpam库。 我想我想了解链接器在抱怨什么? 我如何调查潜在的原因等?

什么是英特尔微代码?

从我读过的内容来看,它用来修复CPU中的错误而不修改BIOS。 根据我对汇编的基本知识,我知道汇编指令被CPU内部分成微码并相应执行。 但是intel以某种方式允许在系统启动并运行时进行一些更新。 任何人有更多的信息? 有没有关于微码可以做什么的文档,以及如何使用它们? 编辑:我读过维基百科的文章:没有弄清楚我怎么可以写一些我自己的,什么使用它会有。

如何在Python中设置matplotlib中的“后端”?

我是matplotlib的新用户,我的平台是Ubuntu 10.04 Python 2.6.5 这是我的代码 import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt plt.plot([1,2,3]) 错误是: /usr/local/lib/python2.6/dist-packages/matplotlib/backends/__init__.py:41: UserWarning: Your currently selected backend, 'agg' does not support show(). Please select a GUI backend in your matplotlibrc file ('/usr/local/lib/python2.6/dist-packages/matplotlib/mpl-data/matplotlibrc') or with matplotlib.use() (backend, matplotlib.matplotlib_fname())) 我安装了Anti-Grain Geometry库apt-get install libagg但是它不起作用。 我试图使用其他像“GTK”和“TkAgg”的后端参数。 我安装了python-gtk2-dev软件包,但是仍然在下面的错误。 任何人都可以告诉我一个可执行的后端参数及其依赖库吗? 这是错误: >>> matplotlib.use('GTK') >>> import matplotlib.pyplot as plt […]

典型的./configure在Linux中有什么作用?

为什么有必要尽pipe在makefile中指定了一切?

为什么许多Unix程序使用像USR1这样的信号?

许多Unix程序都接受像USR1和USR2这样的信号。 例如,要快速升级Nginx的可执行文件,请发送kill -USR2 。 我知道USR1是一个“用户自定义”的信号,意思是说创build这个程序的人可以用它来表示“closures”或“转储你的日志”或“打印上千次”等等。 但我不明白为什么他们必须使用这个任意的名字。 为什么不kill -UPGRADE ,或者kill -GRACEFUL_SHUTDOWN ? Unix只允许特定的信号? 当我们处理它时,Nginx也使用以下信号(参见文档 ): TERM,INT :快速关机 退出 :优雅的关机 HUP : configuration重新加载 用新configuration启动新的工作进程 优雅地closures旧的工作进程 USR1 :重新打开日志文件 USR2 :即时升级可执行文件 WINCH :正常closures工作进程 HUP? 绞盘? 这些名字的原因是什么? 我在哪里可以了解更多关于这个?

在bash中限制文件名的长度

以下问题仅适用于bash和linux: 文件的绝对path名中的字符数是否有限制? 文件名(不带扩展名)的字符数是否有限制? 如果是的话,这些限制可能是什么? 如果系统特定,我如何访问它们?