Articles of Linux操作系统

Linuxterminal一次Nmap几个IP

我有一个命令,一次在networking上显示几个IP,让我们称之为“列表”。 当我使用这个命令时,它会显示以下内容,例如: 10.0.0.10 Server10 10.0.0.11 Server11 10.0.0.12 Server12 10.0.0.13 Server13 我想Nmap所有这些一次,但只是使用特定的端口,所以基本上“nmap 10.0.0.10 -p22”,但我想提示用户哪个端口Nmap,并为Linux做到这一点与每服务器提到,当给出'列表'时显示。 这可能吗? 这将需要一个AWK脚本或类似的? 谢谢,

Linux上的Indy HTTP服务器只返回响应文本的最后一个字符

环境:Ubuntu 12.04 LTS,Indy 10.5.9 rev 4885,Lazarus 1.0.4 / FPC 2.6.0。 用我简单的TIdHTTPServertesting程序,网页浏览器只显示最后一个字符('!'),而不是完整的响应,应该是'Hello world!'。 我可以看到在函数ToBytes ( ToBytes 6059行)传递的AValue参数中的文本仍然是正确的,ASrcEncoding是TIdASCIIEncoding和ADestEncoding是'ISO-8559-1'。 在执行6061行之后(LBytes:= TIdTextEncoding.Convert(ASrcEncoding,ADestEncoding,LBytes);)LBytes数组包含#33后跟零。 我的示例项目: program MyHTTPServer; uses cthreads, IdHTTPServer, IdCustomHTTPServer, IdContext, IdSocketHandle, IdGlobal, SysUtils; type TMyServer = class (TIdHTTPServer) public procedure InitComponent; override; procedure OnGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); end; procedure Demo; var Server: TMyServer; begin Server := TMyServer.Create(nil); […]

C Linux的tcp代理服务器套接字

我一直在努力在Linux编程的一些套接字,我正在尝试做一个并发代理服务器。 基本上我希望连接到代理服务器的每个客户端遇到2个问题。 第一个是介绍命运的IP,第二个是它的端口号。 在发送这些信息之后,代理服务器将把每个客户端连接到他们select的IP(这是和回显服务器)。 我的问题是如何以及将在哪里保存每个用户回答的2个问题,然后将它们连接到他们select的回显服务器。 以下是我认为我们必须处理的部分代码: /*============ WARNS THAT SERVER IS READY TO ACCEPT REQUESTS ==================*/ if(listen(sockfd,5)==-1) Abort("Impossible to accept requests"); /*========== STARTS ANSWERING CLIENTS BY CONCURRENT FORM =============*/ cliaddr_len=sizeof(cli_addr); while(1){ FD_ZERO(&fd_read); FD_SET(STDIN_FILENO, &fd_read); FD_SET(sockfd, &fd_read); fflush(stdin); n=select(32, &fd_read, NULL, NULL, NULL); if(n<0) if( errno!=EINTR){ close(sockfd); Abort("Error on select"); }else continue; if(FD_ISSET(STDIN_FILENO, &fd_read)){ gets(comando); if(strcmp(comand, […]

比stat()在dir中查找文件更好的方法?

我试图找出某些文件是否在某个文件夹中。 但是,即使文件存在,我试图find它们的方式在某些文件夹中不起作用。 bool FileExists(string strFilename) { struct stat stFileInfo; bool blnReturn; int intStat; intStat = stat(strFilename.c_str(),&stFileInfo); if(intStat == 0) { // We were able to get the file attributes // so the file obviously exists. blnReturn = true; printf("Found file %s\n", strFilename.c_str()); } else { blnReturn = false; printf("Didn't find file %s\n", strFilename.c_str()); } return(blnReturn); […]

Rake命令中止/ Ruby Rails

我很确定我应该在这里张贴这个,但随时纠正我,如果这属于超级用户的东西。 试图设置这个Ruby / JavaScript应用程序https://github.com/jamesu/tubehub – 在我刚刚格式化的Linode上。 运行:Ubuntu v10.04 LTS,Ruby v1.8.8dev,Rails v3.2.9,SQLite v3.6.22。 我似乎已经接近成功地安装和启动这个应用程序,经过很多故障排除之后,但是最后一点我不能弄清楚是运行rake命令时得到的“中止”错误,如README文档中所示。 root@li570-120:~/tubehub# rake db:seed rake aborted! /root/tubehub/util.rb:8: undefined (?…) sequence: /^(.*?)((?<!&)#|\#)(.*)$/ /root/tubehub/util.rb:9: undefined (?…) sequence: /(?:\#)(?<!&#)(?:\#)*(.*)$/ /root/tubehub/core.rb:37 /root/tubehub/core.rb:36:in `each' /root/tubehub/core.rb:36 /root/tubehub/Rakefile:2 Tasks: TOP => db:seed => environment (See full trace by running task with –trace) root@li570-120:~# rake db:load rake aborted! No Rakefile found […]

尝试使用JConsole连接到RaspberryPi jvm

下午好。 我使用Oracle的说明(Raspberry Pi上的Java SE Embedded入门,Bill Courington和Gary Collins),在我的Raspberry Pi ejre1.7.0_10上安装了Java SE Embedded。 我可以ssh进入raspi并在其上运行Java程序。 我现在用raspi上的jmxremote参数启动JVM,然后在Linux主机上启动JConsole #!/bin/bash ./bin/java -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar /home/pi/test/test.jar testing将无限期地打印出整数,直到达到机器的极限。 我不知道正确的端口号。 这是唯一的问题吗? 这是从networking直播的Java SEembedded式开发轻松由吉姆康纳斯,这是我的插件电脑的问题。 为什么JConsole不能与Raspberry Pi远程工作(JMX)? 我希望有人在这里尝试过。 如果你能帮忙,谢谢。 georgefk

如何通过Shell脚本使用并行节点?

我正在尝试使用并行节点来运行数值模拟。 我有节点#0到12,我希望分别利用它们来运行模拟的一个单独的部分。 本质上,我需要评估一个节点上的x = 1到4,然后f(x)在下一个节点上x = 5到9,然后f(x)为x = 10到14一个下一个,然后从那里继续。 最初,我尝试使用如下循环: n=0 while [ $n -le 12 ] do ssh compute-0-$n #evaluate the f(x) for the x values that I want exit n=$(($n+1)) done 但是这不起作用,因为每当我使用ssh compute-0- $ n命令跳转到一个节点时,与原始shell脚本的连接似乎停止,当我退出节点时,shell脚本似乎继续沿着它的快乐方式…我想有一个更好的办法来完成这个,但我相对较新的这个,任何人都可以帮助吗?

在RHEL 6 x64中configurationnetworkingaudio系统时出错

我试图用两种方法在RHEL 6中设置NAS(networkingaudio系统): 首先,通过RPM安装, [root@localhost ~]# rpm -Uvh nas-1.9.2-1.el6.x86_64.rpm nas-libs-1.9.2-1.el6.x86_64.rpm 它被安装,但我无法find/etc/init.d/目录中的服务。 只有/etc/nas/nasd.conf文件被创build。 如果我运行命令 [root@localhost ~]# nasd Network Audio System Release 1.9.2 Network Audio System Release 1.9.2 Init: Output open(/dev/dsp) failed: No such file or directory Fatal server error: could not create audio connection block info 其次,通过configuration由NAS站点提供的最新的tar-ball nas-1.9.3.src.tar.gz 。 但问题是一样的。 请帮助我正确地安装,因为我想获得基于qt的应用程序的audio,qt使用NAS的audiofunction。

从bash脚本获得userinput(由cron或udev执行)

编辑,这个问题可能还没有完全清楚,简短的版本: 如果脚本在后台运行,而不是在活动的控制台中,如何popup一个询问用户input的对话框? /编辑 当我从udev或cron运行一个bash脚本时,它通常会在后台的某个地方安静地运行。 例如可以插入一个外部硬盘运行rsync进行数据备份。 所以不是每次我插入硬盘驱动器,我想启动这个动作。 什么是最小的方式来触发一些用户input对话框,并询问是或否? 我可以用PyQt编写一些接口,但我希望尽可能less依赖,最好跨窗口pipe理器,甚至可能没有窗口pipe理器。 谢谢!

如何阻止一个网站,使其不容易畅通?

我发现互联网对我来说是一个巨大的时间。 我阻止对我完全无用的网站的努力是徒劳的,原因很简单,如果我觉得无聊,我会绕过这个块。 我所能想到的只是使用hosts文件和一个文件监视器,以确保每次编辑时都有一个环回。 注意:我运行Linux和Mac。