Articles of Linux操作系统

select一个文件的一部分,并将其复制到Linux中的新文件

如何使用Linux将文件的特定内容复制到新文件中? 例如,我有一个名为test.log文件的文件,它包含大约1000行。 从这1000行我需要复制200 – 700行之间的行。 LINUX / UNIX中是否有单行命令?

分配独立的libpythonpath

在较新的Ubuntu / Debian版本下, libpython2.7.so位于/usr/lib/i386-linux-gnu/libpython2.7.so或/usr/lib/x86_64-linux-gnu/libpython2.7.so之下早些时候,无论架构如何,都可以在/usr/lib/libpython2.7.sofind它们。 我没有检查其他分布。 如何findPython的libpython2.7.so的path?

可以在RPM spec文件中“包含”其他文件吗?

在RPM规范中是否有一种“包含”指令? 我无法通过Googlesearchfind答案。 动机 :我有一个RPM规范模板,构build过程使用版本,修订版本和其他特定于构build的数据进行修改。 这是目前由sed完成的。 我认为如果规范将包含特定于构build的定义文件(这将由构build过程生成),那么将会更清洁,因此我不需要在规范中进行search和replace。 如果没有include ,有没有一种习惯的方式来做到这一点(相当普遍,我相信)的任务?

如何find像libfoo.so.1这样的库名称的完整文件path?

没有实现链接器或使用ldd ,我怎样才能find一个图书馆的完整path? 在Linux上有没有标准的库? (POSIX也许?) 在明知使用libGL.so.1的文件上使用ldd和grep ,它看起来像: $ ldd /usr/bin/glxinfo | grep libGL libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f34ff796000) 给定一个像libGL.so.1这样的库名称,我怎样才能find完整path/usr/lib/libGL.so.1 ? 。 最好接受一个查找32位和64位库的选项。 如果没有图书馆这样做,是否有一个程序来做到这一点? 就像find-library-path libGL.so.1 。 locate libGL.so.1命令不计数。 我不想实际上使用dlopen加载库,或者如果它执行库中的代码。

在Linux中使用CLI only工具生成磁盘使用情况图表/图表

在这个问题中,有人要求在Linux中显示磁盘使用的方法。 我想进一步沿着这条路线走一步…如何从一个合理的答案的输出获取输出的shell脚本,并从中产生一个graphics/图表(输出在PNG文件或东西)? 这可能是一个普通的问题要求太多的代码,但我的猜测是,有人已经有一个oneliner铺设在某处…

为什么LD_PRELOAD似乎不能用wc写入

我正在玩LD_PRELOAD拦截libc调用,似乎写入调用不被拦截与wc,虽然它似乎与猫一起工作。 下面显示了一个精简版的问题。 RedHat Linux 2.6.9-42.ELsmp Makefile文件 writelib: gcc -Wall -rdynamic -fPIC -c write.c gcc -shared -Wl,-soname,libwrite.so -Wl,-export-dynamic -o libwrite.so write.o -ldl 为write.c: #include <stdio.h> #include <string.h> #ifndef __USE_GNU #define __USE_GNU #define __USE_GNU_DEFINED #endif #include <dlfcn.h> #ifdef __USE_GNU_DEFINED #undef __USE_GNU #undef __USE_GNU_DEFINED #endif #include <unistd.h> #include <stdlib.h> static ssize_t (*libc_write)(int fd, const void *buf, size_t len); […]

用Android NDK r10编译FFmpeg 2.3

我想按照这个教程来编译FFMpeg 2.3和Android NDK r10: http ://www.roman10.net/how-to-build-ffmpeg-for-android/ 得到几个错误后,我修改了这样的构build脚本: #!/bin/bash ###################################################### # Usage: # put this script in top of FFmpeg source tree # ./build_android # It generates binary for following architectures: # ARMv6 # ARMv6+VFP # ARMv7+VFPv3-d16 (Tegra2) # ARMv7+Neon (Cortex-A8) # Customizing: # 1. Feel free to change ./configure parameters for more features # 2. […]

如果Linux中单个目录下的文件太多,会发生什么情况?

如果单个目录中有100万个单独的文件(大多数为10万个),平坦地(没有其他目录和文件),是否会有任何其他可能的方式效率或劣势的妥协?

确认和负面预测给错误

对于使用ack-grep的问题,我有一个负面的问题。 我正在运行这个命令: ack-grep "paypal_responded(?!_at)" 但我得到的错误: bash: !_at: event not found 我已经尝试在各个地方添加反斜杠,但我也是使用ack和linux的新手,所以请把我当作任何指令的新手。 提前致谢。

当我从Docker容器中运行它时,gdb没有命中任何断点

问题 我能够设置和达到一个断点,如果我从主机编译和运行,但如果我从docker容器内做到这一点gdb不会击中设置的断点。 重现步骤(所有片段都准备好复制粘贴) 创build一个docker文件: cat << EOF > Dockerfile FROM ubuntu RUN apt-get update RUN apt-get install -y build-essential gdb EOF 构build一个图像并在其中运行一个交互式会话: docker build -t gdb_problem_testing . && docker run –rm -it gdb_problem_testing bash 从容器内部创build一个小的main.cpp,编译并运行gdb: cat <<EOF > main.cpp && g++ -g main.cpp && gdb -ex 'break 5' -ex 'run' ./a.out #include <iostream> int main(int […]