我想知道推荐使用的音频库是什么
我正在尝试制作一个小程序,帮助调整乐器。(钢琴、吉他等)。我读过关于ALSA&Marsyas音频库的文章
我认为这个想法是从麦克风中采集数据,对5-10毫秒的数据块进行分析(根据我所读到的)。然后执行FFT计算哪个频率包含最大峰值 ALSA是linux现在的默认标准,因为内核中包含了内核驱动程序,OSS被贬低了。然而,ALSA用户空间还有其他选择,例如,它似乎是针对低延迟专业类型的应用程序。它的API似乎有一个更好的API,虽然我没有使用过它,但我对ALSA AP
标签: Linux
64-bitshared-libraries
早上好
在64位RedHat box上,我们必须编译并运行32位应用程序。同时,我设法以32位编译了所需的gcc版本(4.0.3)和所有所需的运行库,并将LD_LIBRARY_路径设置为指向32位版本,但现在在剩余的构建过程中,需要执行一个小java程序,该程序作为64位程序安装在/usr/bin中,它现在首先找到32位版本的libgcc_.so
通常,如果我将LD_LIBRARY_路径设置为32位版本,我会中断64位程序,反之亦然
这到底是怎么回事?我肯定我不是第一个遇到这个问题的人。它通常是
我试图将我的旧项目导入到新的SVN服务器(SVN+web_dav+apache),但在使用OrtoiseSVN导入时,我遇到了一些奇怪的错误
Adding: C:\tmp\carpirate\test
Adding: C:\tmp\carpirate\test\crawlerTestSuite
Adding: C:\tmp\carpirate\test\crawlerTestSuite\TestP2p.java
Adding: C:\tmp\carpirate\test\crawle
我想在一台服务器上捕获ip包,然后通过libnet将包转发到另一台服务器,谁有一些例子?提前感谢。查看以下教程:
如果您有不起作用的代码片段,请包括
编辑
第二个链接不再工作。下面是一个可能有帮助的不同链接。一般来说,由于链接过期或过时,因此不应列出链接。搜索“libnet初学者教程”或“pcap初学者教程”将是一个良好的开端
你好
我正在使用GrailsMailSender服务(下面使用Java邮件API)从AmazonEC2Linux实例和AmazonEC2Linux实例发送大量电子邮件。我已经将邮件API配置为使用端口25上的外部smtp服务器发送电子邮件,并且我可以从外部电子邮件服务器日志中验证电子邮件是否确实由他们发送
但是Amazon AWS给我发了一封电子邮件,说我已经达到了SMTP端口25的电子邮件发送限制
当我一直使用外部smtp服务器发送电子邮件时,我无法理解我是如何达到限制的。此外,从Java M
我在Linux中有如下代码:
return_code= spawnp(cmd, 3, fd_map, NULL, argv, environ);
我需要将它从QNX转换到Linux,所以我需要使用fork exec,因为在Linux中不能使用spawn。
1) 如何做到这一点?是这样吗
pid = fork();
if (pid ==0) /* child */
exec(cmd, argv, environ);
2) 如何将在spawn中传递给exec的参数fd_map和“3”传递
我编写一个脚本从HDFS Parralel获取数据,然后在for循环中等待这些子进程,但有时它返回“pid不是这个shell的子进程”。有时候,它工作得很好。它太令人困惑了。我使用“jobs-l”来显示后台运行的所有作业。我确信这些pid是shell进程的子进程,我使用“ps aux”来确保这些pid被分配给其他进程。这是我的剧本
PID=()
FILE=()
let serial=0
while read index_tar
do
echo $index_tar | grep
我正在尝试用bash编写一个脚本来检查用户输入的有效性。
我想将输入(比如变量x)与有效值列表相匹配
我现在想到的是:
for item in $list
do
if [ "$x" == "$item" ]; then
echo "In the list"
exit
fi
done
我的问题是,是否有更简单的方法来实现这一点,
类似于列表的内容。对于大多数编程语言,包含(x)
假设列表为
所以我在$1上应用了这个sed命令,它是一个文件
我想知道的是sed如何计算所有的斜杠和反斜杠
继承模式中的任何字符意味着什么
sed '/^\/\*/d/.*\*\//d' $1
据我所知
'/^ ....../d'
删除行开头的一些图案(考虑第二个d)
-第一个d代表什么,点和/或/\(unescape字符)代表什么
有人能给我解释一下吗?这实际上是两个背靠背的sed命令:
/^\/\*/d
/.*\*\//d
^匹配行首,\/匹配文字正斜杠,\*匹配文字星号。(由于正斜杠和星号是“
我对/proc/pid/smaps中的Pss列感到困惑,所以我编写了一个程序来测试它:
void sa();
int main(int argc,char *argv[])
{
int fd;
sa();
sleep(1000);
}
void sa()
{
char *pi=new char[1024*1024*10];
for(int i=0;i<4;++i) {
for(int j=0;j<1024*1024;++j){
我试图用sed解析ifconfig输出中的一些数据,但我无法正确地进行解析。我希望命令只提取我要找的号码
例如,我对提取发送的字节感兴趣:
eth1 Link encap:Ethernet HWaddr 00:00:00:09:15:f7
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::92e2:baff:fe08:35c7/64 Scope:
假设$2是我的变量。我试着从
awk -F\, '{print $2 ":"}'
到
但是它从打印某些内容变为什么也不打印。您正在打印gsub的结果,但是gsub对$2进行就地修改,而不是返回修改后的副本。调用gsub,然后打印:
awk -F\, '{gsub(/[ \t]+$/, "", $2); print $2 ":"}'
(我没有足够的分数直接评论前面的答案。)
要在$2的结尾处修剪空白,请使用:
awk -F\, '{gsub(/[ \t]+$/, "", $2); print
几天前,我问了一个关于在两个文本文件中标记差异的问题,很快得到了回答
现在我有一个非常类似的问题,但有点复杂。
我有2对具有以下特征的文件:
pair1:(File1.txt,File2.txt)
pair2:(File3.txt,File4.txt)
这些文件对中的每个文件之间都有一行一行的对应关系。假设File1.txt和File3.txt是一些英语单词,File2.txt和File4.txt分别是它们的阿拉伯语和法语翻译。此外,File1.txt和File3.txt非常相似(在某些情况下是
在我的应用程序中,我为一个简单的http服务器创建了一个线程,然后在我的应用程序中,我尝试连接到http服务器,但控制在recv调用时被阻止/挂起
但如果尝试使用LinuxGet命令连接到我的应用程序的http服务器,我将成功连接到http服务器
根据我在谷歌搜索的理解,我发现这不是正确的方法
但是如果我想这样做,我应该在什么地方创建套接字,以便我可以从应用程序中连接到http服务器
下面是我的http服务器套接字是如何创建的
pthread_create(&pt_server, NUL
我之前问过,这涉及到从一个文本文件中提取大素数并将它们放入另一个文件中。它应该抓取2^32之前的每个素数,包括2^32之后的第一个素数,由于某种原因,该脚本停止工作
#!/bin/bash
n=4294967296
last=0
while read number
do
if [ $last -gt $n ]
then break
fi
echo $number
last=$number
done < primes.txt > primes2.
我的文件以-comps.xml结尾,格式如下:
http://some/url/<sha256sum>-<2 chars>-x86_64-comps.xml
如何使用curl下载此文件?假设您已经知道文件名,下载文件内容,然后使用
curl -O http://some/url/0dae8d32824acd9dbdf7ed72f628152dd00b85e4bd802e6b46e4d7b78c1042a3-c6-x86_64-comps.xml
如果您希望根据文件内容
我知道这个问题已经被问了一百万次了,但是我的~/.gitconfig只有两行,在教程中是字符正确的
git config --global user.name "trx"
git config --global user.email chazx@live.com
这里可能有什么问题?这是我的~/.gitconfig:
[user]
name = Luigi R. Viggiano
email = luigi.viggiano@...
[color]
ui = true
我有一个包含许多行的文件,我想用Linux命令只显示每行的第一个字
我该怎么做呢?您可以使用awk:
awk '{print $1}' your_file
这将“打印”您的_文件中的第一列($1)尝试使用以下方法执行此操作:
我看已经有答案了。但您也可以使用sed执行此操作:
sed 's/ .*//' fileName
尝试使用coreutils cut执行此操作:
cut -d' ' -f1 file
上述解决方案似乎适合您的具体情况。对于问题的更一般的应用,请考虑单词一般被定义为空格
我没有从imapsync获取脚本来重命名maildir文件名以使其工作:-/
所以我需要的是:
我有一个包含数千封邮件的文件夹。将这些电子邮件导入我的新服务器后,电子邮件的文件名在文件名中以Unix时间戳的形式获得了创建日期,但文件的创建日期标志是来自电子邮件的正确接收日期
一个文件的ls-l如下所示:
-rw-r--r-- 1 popuser popuser 1350432 2013-03-16 07:22 1363563215.M562903P29332V0000000000000802I
我遇到一种情况,我们的服务器正在终止一个我不想终止的进程。
我的理解是,发生这种情况是因为内核过度使用内存,然后在实际内存不足时被迫终止进程。
我的理解是,在这种情况下,我可以通过调整以下值来影响内核决定终止哪个进程:
/程序/[pid]/oom_调整
本文解释了所有这些:
但是,当我以ubuntu用户的身份尝试此操作时,会出现权限被拒绝错误:
回声-15>/proc/5641/oom_adj
-bash:/proc/5641/oom_adj:权限被拒绝
sudo echo-15>/proc/
亲子关系记录在哪里?也就是说,例如,Linux如何知道/lib文件夹下有一个/lib/src文件或文件夹?它在/lib的inode中吗
还有一个相关的问题:假设在/folderA下有一个文件,在/folderB下有一百万个文件,除了它们下面的文件之外,这两个文件夹本身的大小是否有差异
谢谢
亲子关系记录在哪里
在父目录中
目录/lib包含目录项,包括/lib中存在的文件和目录的i-node和name
i-node包含有关文件的所有信息:文件类型、文件的访问权限位、文件大小等
假设在/folder
起初我以为我会使用apt-get通过几个命令安装Haskell,但它似乎有点复杂
当我查看时,我下载了haskell-platform-2013.2.0.0.tar.gz。然后下一步不知怎么搞混了。它要求在安装平台之前安装GHC,但同时如果打开GHC下载页面,它会显示一些警告,例如Stop。。。。。我们建议安装Haskell平台,而不是GHC
请指导我如何在Debian Wheezy上安装Haskell。我们可以从这个包中构建一个.deb安装包吗?$sudo apt get install ha
下面的ls命令列出了前93个文件
ls -lrt | head -93
但当我试着用管道把这个传给scp的时候
scp 'ls -lrt | head -93' {} test@testserver:~/DIR1/SUBDIR
我收到一个错误,说ls-lrt | head-93:没有这样的文件或目录
有人能告诉我我做错了什么吗?我假设您想将前93个文件传输到远程系统。如果是,请尝试:
scp $(ls -1rt | head -93) test@testserver:~/DIR1/SUBD
标签: Linux
shared-libraries
我正在尝试清除指向要链接的库的链接的ldconfig缓存。
我有一个本地文件夹,新建立的库放在那里。
我想更新ldconfig缓存以指向这些新构建的lib
我已经尝试使用ldconfig-c命令,并将自己的.conf文件提供给它。
我还尝试替换/etc/ld.so.conf文件以指向libs的新路径。
但即使这样做了,当我使用ldconfig-p命令检查缓存时,它仍然显示旧的libs
因此,如何清除和重建ldconfig缓存?
补充一点:我现在使用的是Ubuntu 13.10。已经晚了2年,但如
我希望能够分发在我的应用程序中运行的Linux。原因是我需要添加软件功能,这些功能最容易添加到Linux容器中,并随应用程序一起分发
有没有办法在Windows、OSX和Linux上的C/C++应用程序中运行VM?想到两种框架:
将Linux内核作为应用程序运行。这使您能够从Linux应用程序中最终控制虚拟机的启动和管理
提供用于以编程方式管理各种虚拟机的工具包
它们可能都需要Linux主机。对于其他主机操作系统,可能需要手动管理虚拟机,或者使用临时脚本。QEMU可以运行虚拟机,并且可以在W
有没有办法检测远程网站是否支持SPDY及其版本
我可以从命令行使用一些东西,比如bash脚本
尝试使用curl发送自定义用户代理标头,但无法获取任何有助于我的响应标头
这个想法是为了能够得到SPDY:true/false版本:3.1/3.0。。。对于任何域。SPDY协议协商在初始TLS握手期间进行
目前有两种协商协议的方法:旧的方法称为NPN()。
在ClientHello TLS消息中,客户端发送ID为0x3374的NPN扩展。服务器回复ServerHello TLS消息,该消息还包含服务器支
我的应用程序中有一个滚动窗口,我在其中创建了一个绘图区域小部件。在绘图区域中,我放置了多个图像。当用户在搜索框中输入有关图像的信息时,相应的图像将高亮显示
我的问题是如何让应用程序在用户不使用滚动条的情况下自动滚动到高亮显示的图像框。滚动窗口应自动移动视图区域,以显示高亮显示图像所在的区域
在滚动窗口上使用的滚动策略是XmAUTOMATIC
如果您有任何指示,我们将不胜感激。请提前感谢。尝试XmScrollVisible(),如果这不起作用,您将需要:
1. Find out the size
我有一个在机器上打开核心的脚本
它工作得很好,但是如果我增强它,就像没有内核一样
在机器上,我想让它告诉我,不仅仅是踢出一个
错误命令。我想用一些东西来代替这个错误
因此,我试图确定最后一个命令的退出状态,并根据
如果你不同意的话
#!/bin/bash
rc=$?
for i in server5432foo server5438foo server5344foo server5430foo;
do
echo $i ;
ssh -q -T $i " ls -ltr /local/data/l
我想生成一个文件,该文件包含24小时格式(从00:00:00到23:59:59)的cpu使用情况日志。我正在使用sar命令,但它以am或PM格式提供时间,这是不需要的
样本:
12:01:01 AM all 1.33 0.00 1.06 0.24 0.00 97.37
12:02:01 AM all 1.30 0.00 1.02 0.04 0.00 97.64
预
想要一个linux/unix脚本,它可以告诉我目录树中任意一行的最大字符数
所以我可以指定一个根文件夹。它遍历它并使用一些掩码处理文件(如*.java)-一个find命令。。。然后将max字符保留在var中的一行中并打印出来
我看到了,但我只想要最大值,而不需要复制到电子表格或其他处理
不要希望特定的字符要考虑所有的字符。这返回当前目录中所有*java文件中最多字符(对它们计数为WC-C)的行:
perl -e 'while(<>){$l=length; $l>$m &
标签: Linux
psycopg2fedora-21
有人能帮我安装psycopg2吗?
我有:
对于psycopg2 I安装的软件包(尝试解决问题时):
但我在“pip安装psycopg2”时仍然会出错
输出:
Collecting psycopg2
Using cached psycopg2-2.6.tar.gz
Installing collected packages: psycopg2
Running setup.py install for psycopg2
Complete output from command /h
我有数千个未压缩的tar文件,这些文件加起来几乎有1 TB的数据。现在我想修改一些tar文件中的一个特定字符串
我是否可以在不提取tar文件的情况下直接执行此操作,例如使用sed?当然,我不想得到损坏的tar文件
详情:
我要修改的字符串长度为4个字符。我可以用另一个4个字符的字符串替换它吗?似乎只包含tar文件中包含的每个文件的头和每个文件的长度的校验和,因此用其他4个字符替换tar文件中包含的文件中的4个字符应该可以,对吗
我甚至可以用6个字符的字符串替换4个字符的字符串吗?tar文件中似
Linux是否有任何本机内核功能,可以将提供的缓冲区发送到一组套接字?一种向量化I/O,除了套接字句柄而不是缓冲区
目标是减少在需要向n个客户端广播一些状态更新的情况下所涉及的u/k转换的数量,这需要迭代每个套接字并发送
一个限制是必须支持TCP套接字(不在我的控制之下)答案是否定的,linux和posix系统都没有您想要的调用。我担心您不会从中得到任何好处,因为每个数据流都将遵循不同的路径,这使得在内核中复制缓冲区比在用户空间中更困难。不在用户到内核模式下复制并不一定意味着在内核模式下复制更好
目前,我们在EC2上运行的3个zookeeper实例的磁盘IO很高(cpu在top命令中等待50%)
我们的磁盘是80G EBS,可以获得240 4k IOPS
I iotop zookeeper进程显示磁盘写入速度为900K/s
不过,我也尝试了sysdig,它显示zookeeper仅以40KB/s的速度写入的事务日志
sudo sysdig -pc -c topfiles_bytes
sysdig -c topfiles_bytes proc.name=java
我确认给zookeeper
我必须打印文件列表中指定文件的内容,如下所示。开始文件名中的日期是可变的,并且“\u lol\u lol.txt”部分是constans
ls
2015-01-03_lol_lol.txt
2015-01-24_lol_lol.txt
...
2015-10-23_lol_lol.txt
2015-10-24_lol_lol.txt
...
2015-11-14_lol_lol.txt
2015-11-15_lol_lol.txt
2015-11-16_lol_lol.txt
2015-1
我现在有一个bitbake.bb脚本,看起来像这样
DESCRIPTION = "Hello World"
SECTION = "TESTING"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
PR = "r0"
SRC_URI = "file://fileA \
file://fileB"
S = "$
我想禁用TLS1.2版本的虚拟机(linux)。我想知道是否有任何命令来禁用它。
在windows中,我们通常在google chrome中进入设置>高级设置>更改代理设置>高级,在高级选项卡中,我只需禁用单选按钮。但是对于linux,我找不到任何与TLS相关的设置
有人能帮我吗
提前感谢系统范围内没有常规设置。但每个浏览器可能都有特定的设置。对于Chrome,这可能是所述的tls版本最大值。对于Firefox,这将是所述的security.tls.version.max
除此之外:如果您试图限
对于csv文件中第一列通常为空的数据集,我希望以编程方式在每一行(不以双引号开头)中插入一个额外的逗号。
从下面的示例中,您将看到只有某些行以“开头,而这些是我希望忽略的行。每隔一行应该会得到一个额外的,
"1967 Universe",1967,"1,141.0",650.6,73.0,417.5,222.6,119.6,309.8,176.0,390.8,225.0,217.8,130.0
,1968,"1,353.4",694.7,84.3,574.4,234.8,119.2,350.1,
标签: Linux
schedulinglttng
我试图通过跟踪4.4内核(Ubuntu 16.04 LTS)中的事件sched_wakeup和sched_开关来跟踪Linux调度程序。有时甚至在线程关闭之前,我也会收到sched_wakeup事件。我不明白这个唤醒的意义,因为线程已经在运行了。以下是显示此行为的babeltrace日志(tid=2326,事件用箭头标记):
有人知道这个唤醒是做什么的吗?我需要提供更多的信息吗
编辑:添加附加信息以及包含更多事件的新日志
使用优先级为10的SCHED_RR调度线程2348。RR的时间片是默认值(
我正在尝试使用ptrace监视二进制文件的系统调用。二进制文件在pselect()中休眠,如果没有ptrace,SIGQUIT将使其从pselect返回。传递给pselect的阻塞信号掩码包括SIGQUIT
当使用ptrace执行时,它会从sys_pselect6退出,但不会完全退出glibc的pselect。我在做什么来防止sys_pselect6退出到用户代码
跟踪器:
#包括
#包括
#包括
#包括
#包括
#包括
int main(int argc,char*argv[])
{
int
我已经用systemd和dhcp客户端构建了一个映像。在meta-openembedded/meta-systemd/oe-core/recipes-connectivity/dhcp中的配方dhcp中有一个bbappend,它创建了一个dhclient.service。我想修改(或覆盖)此文件,但启动bitbake时,出现一个错误,告诉我应用修补程序0001-dhclient-modify-interface.patch在输入行5找不到要修补的文件
这是我的dhclient.service修补
我已经在Ubuntu 16.04服务器上安装了Docker,使用本页上的手册:,因此,使用以下步骤:
curl -fsSL 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add -
sudo add-apt-repository "deb https://packages.docker.com/1.13/a
我有一个用汇编编写的函数foo,在64位Linux(Ubuntu)上用yasm和GCC编译。它只需使用put()将消息打印到stdout,如下所示:
bits 64
extern puts
global foo
section .data
message:
db 'foo() called', 0
section .text
foo:
push rbp
mov rbp, rsp
lea rdi, [rel message]
call puts
pop rbp
manjaro linux上ffmpeg中的屏幕撕裂问题
使用了ffmpeg命令-
ffmpeg-y-fx11Grab-s1366x768-i:0.0out.mkv
ffmpeg -version
ffmpeg version n4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 9.3.0 (Arch Linux 9.3.0-1)
configuration: --prefix=/usr --disable
我是jenkins的新手,我正在尝试在Ubuntu18.04实时服务器上执行docker命令。我已经在上面安装了docker,并且能够通过ssh运行docker命令。
现在我需要的是通过Jenkins在服务器上运行相同的命令。
我已经在本地的ubuntu 20.04桌面机器上安装了jenkins。我还安装了docker。
当我尝试通过SSH从jenkins运行任何命令时,它都会工作,但当我尝试运行docker命令(docker-v)时,它会说
[SSH]正在执行。。。
bash:第1行:未找到d
我正在使用alpine linux构建一个映像,如下所示:
FROM alpine:3.7
RUN apk update \
apk upgrade \
apk add bash
CMD ["sh","ls"]
我希望bash在容器中可用,但当我运行它时,它找不到bash
docker run -it --rm tmp:latest /bin/sh
/ # bash
/bin/sh: bash: not found
如果有人能帮我理解为什么它不可用
我有一个Java程序将数据填充到xyz表中,还有一个dataimporter脚本将数据从该xyz表填充到其他表中
我试图只在Java程序成功完成后运行dataimporter
下面是我的脚本。和我在不同地方使用的逻辑一样,它工作得很好。
我试着回音两个$?和$retVal,但看不到任何echo语句结果
#!/bin/bash
//// ---code----
echo ".jar execution startd...currentMilliseconds"_$(date
我不确定这是否是一个合适的提问地点,但我很好奇是否有人知道在KeyClope和/或FreeIPA中实施命名约定的方法。这样做的原因是,有人会认为您可以对用户帐户创建的特定命名约定执行策略。我在phpmyadmin之类的数据库中看到过这种情况
我试图弄清楚我们是如何强制命名约定为以下格式的:firstname.lastname
随后,禁止任何人在本约定之外创建用户帐户
我需要让用户在登录前选择任何可用的wifi。
我知道如何允许使用已知的wifi,但这并不能解决我的问题需要允许任何用户在登录之前选择任何wifi进行连接。用于编程问题,而不是有关使用或配置Unix及其实用程序的问题。或者更适合回答这样的问题。
我正在尝试安装软件包,在安装阶段遇到以下错误:
“不支持的体系结构;xxx需要SSE4.1和SSE4.2”
但是,正如我检查的那样,我的cpu(2GHz四核intel i5)确实支持SSE4.1和SSE4.2,如以下附件所示
我在其他地方没有找到类似的解决方案。如果有人能帮忙,我将不胜感激
另外,我在Virtualbox上运行Ubuntu,可能是Virtualbox的某些设置阻碍了这一过程?我们必须看看config.hpp实际上在测试什么。什么是你要编译的程序?什么版本的VialAlbox?@