小编Gru*_*eck的帖子

检查shell脚本中是否存在目录

在shell脚本中,可以使用什么命令来检查目录是否存在?

unix shell posix

3556
推荐指数
34
解决办法
271万
查看次数

找到两个不同列表是否包含完全相同的元素的简单方法?

在标准Java库中,查找两个列表是否包含完全相同的元素的最简单方法是什么?

如果两个列表是相同的实例,则无关紧要,如果列表的类型参数不同则无关紧要.

例如

List list1
List<String> list2; 
// ... construct etc

list1.add("A");
list2.add("A"); 
// the function, given these two lists, should return true
Run Code Online (Sandbox Code Playgroud)

我知道可能有些东西盯着我:-)


编辑:为了澄清,我正在按顺序寻找完全相同的元素和元素数量.


编辑:谢谢你指出我看不见的明显答案:-)

虽然到目前为止给出的所有答案都是正确的,但有些答案比其他答案更正确,所以在接受之前我会等待一段时间以获得最好的四舍五入的答案.

java collections

232
推荐指数
8
解决办法
34万
查看次数

如何在Linux中创建具有给定大小的文件?

出于测试目的,我必须生成一定大小的文件(以测试上载限制).

什么是在Linux上创建特定大小的文件的命令?

linux command-line

142
推荐指数
12
解决办法
15万
查看次数

如何在GNU/Linux上设置Subversion(SVN)服务器--Ubuntu

我有一台运行Ubuntu的笔记本电脑,我想充当Subversion服务器.两者都是为了我自己承诺在本地,而对于其他人远程.这项工作需要哪些步骤?请包括以下步骤:

  • 获取并配置Apache和必要的模块(我知道有其他方法可以创建SVN服务器,但我希望它特定于Apache)
  • 配置访问服务器的安全方式(SSH/HTTPS)
  • 配置一组授权用户(如,他们必须授权提交,但可以自由浏览)
  • 使用初始提交验证设置("Hello world"排序)

这些步骤可能涉及命令行或GUI应用程序指令的任何混合.如果可以,请注意特定分发或版本的说明,以及用户可以选择使用特定工具的位置(例如,nano而不是vi).

linux svn ubuntu debian

95
推荐指数
1
解决办法
21万
查看次数

学习或改进面向对象编程(OOP)技能的好挑战/任务/练习

提高面向对象编程技能有什么好的挑战?

这次调查背后的想法是提供哪些练习对学习OOP有用的想法.

挑战应尽可能与语言无关,需要很少或不使用特定的库,或只需要最常见的库.尝试每个答案只包含一个挑战,因此投票将仅对应该挑战的优点.如果指出了所需的技能水平,以及为什么它是一项有用的练习背后的理由,也会很好.

然后可以将挑战的解决方案作为"如何..."问题的答案发布,并从此处链接.

例如:

  • 挑战 - 实施后进先出的堆栈
  • 技能水平 - 初学者
  • 基本原理 - 提供如何引用对象的经验

oop

76
推荐指数
3
解决办法
6万
查看次数

如何使用样式表和xsltproc的xslt从xml中删除元素?

我有很多XML文件,它们具有以下形式:

<Element fruit="apple" animal="cat" />
Run Code Online (Sandbox Code Playgroud)

我想从文件中删除.

使用XSLT样式表和Linux命令行实用程序xsltproc,我该怎么做?

到目前为止,在脚本中我已经有了包含我想要删除的元素的文件列表,因此单个文件可以用作参数.


编辑:这个问题原本缺乏意图.

我想要实现的是删除整个元素"元素",其中(fruit =="apple"&& animal =="cat").在同一文件中有许多名为"元素"的元素,我希望这些元素保留下来.所以

<Element fruit="orange" animal="dog" />
<Element fruit="apple"  animal="cat" />
<Element fruit="pear"   animal="wild three eyed mongoose of kentucky" />
Run Code Online (Sandbox Code Playgroud)

会成为:

<Element fruit="orange" animal="dog" />
<Element fruit="pear"   animal="wild three eyed mongoose of kentucky" />
Run Code Online (Sandbox Code Playgroud)

xml xslt xslt-2.0 xslt-1.0

68
推荐指数
1
解决办法
9万
查看次数

如何避免NoRouteToHostException?

披露:我正在处理的代码是大学课程.

背景:我要完成的任务是报告不同线程技术的效果.为此,我编写了几个类来响应客户端使用Java套接字的请求.我们的想法是向服务器发送请求并报告不同的线程策略如何处理这个问题.每个客户端将发出100个请求,并且在每次迭代中,我们将客户端数量增加50,直到出现故障.

问题:可重复且一致地发生异常:

Caused by: java.net.NoRouteToHostException: Cannot assign requested address
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)

这种情况发生在几种情况下,包括客户端和服务器都在localhost上运行时.可以成功连接一段时间,尝试连接150个客户端后不久就会抛出异常.

我的第一个想法是它可能是Linux对打开文件描述符(1024)的限制,但我不这么认为.我还检查了套接字之间的任何和所有连接是否正确关闭(即在正确的finally块内).

我对发布代码犹豫不决,因为我不确定哪些部分最相关,并且不希望在问题中有大量代码.

有没有人遇到过这个?如何避免NoRouteToHostException?


编辑(进一步的问题是斜体)

到目前为止,一些好的答案指向短暂的端口范围或RFC 2780.这两个都表明我有太多的连接打开.对于两者而言,似乎需要达到此限制的连接数表明在某些时候我没有关闭连接.

调试了客户端和服务器后,两者都被观察到了方法调用myJava-Net-SocketInstance.close().这表明连接正在关闭(至少在非例外情​​况下).这是正确的建议吗?

此外,是否还需要等待操作系统级别才能再次使用端口?如果在运行下一次尝试之前只需要短时间(或乐观地运行命令),则可以为每个50多个客户端单独运行程序.


编辑v2.0

在提供了良好的答案后,我修改了我的代码,使用方法setReuseAddress(true)与客户端上的每个Socket连接.这没有达到预期的效果,我仍然限制在250-300个客户端.程序终止后,运行该命令会netstat -a显示TIME_WAIT状态中存在大量套接字连接.

我的假设是,如果套接字处于TIME-WAIT状态,并且已使用该SO-REUSEADDR选项设置,则任何尝试使用该端口的新套接字都能够 - 但是,我仍然收到NoRouteToHostException.

它是否正确? 还有什么办法可以解决这个问题吗?

java sockets networking exception-handling

59
推荐指数
4
解决办法
8万
查看次数

如何将静态内部类重构为Eclipse中的顶级类?

我无法为以下场景找到正确的重构选项:

我有这样的代码(在Outer.java中):

public class Outer {

    // ... class stuff

    public static class Inner {
        // ... inner class stuff   
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来选择Inner,并将其转换为顶级类,在它自己的.java源文件中.我知道这很容易用复制/粘贴等手动完成,但内部类在很多地方被引用,我希望refactor选项能够处理它所引用的任何地方的变化.

我已经尝试过这个选项,Refactor -> Extract Class...但是对于一个data我不太了解的字段做了一些奇怪的事情.

Eclipse版本是3.5.1 Galileo.

如何将静态内部类重构为顶级类?


编辑:不敢相信我忽略了这样做的选择.感谢您的所有正确答案,给大家+1.我仍然需要接受一个答案,所以如果有更多有用的信息,例如与脚本有关,那么仍然有一个留下答案的目的.

java eclipse automated-refactoring

34
推荐指数
2
解决办法
1万
查看次数

如何使用Bash回显包含匹配文件的目录?

我想写一个bash脚本,它将使用包含特定文件的所有目录的列表.我可以find用来回显每个匹配文件的路径.我只想列出包含至少一个匹配文件的目录的路径.

例如,给定以下目录结构:

dir1/
    matches1
    matches2
dir2/
    no-match
Run Code Online (Sandbox Code Playgroud)

命令(查找'matches*')仅输出路径dir1.

作为额外的背景,我使用它来查找包含Java .class文件的每个目录.

bash shell command-line grep find

33
推荐指数
3
解决办法
2万
查看次数

Eclipse在哪里保存要在启动时打开的文件列表?

问题:Eclipse在哪里存储它在启动时打开的文件列表?

背景:在Eclipse中安装了一个迅速崩溃的插件后,我的Eclipse工作区处于某种状态.启动时,构建工作区任务将无限期暂停20%.在我卸载插件之前,我想再给它一次机会.我有一种感觉,Eclipse暂停的原因是因为一个文件在崩溃时被打开,它试图在启动时重新打开.如果我可以在启动时阻止此文件打开,那么我有可能哄骗插件行为.问题是我不知道在Eclipse运行之间该文件列表的持久位置.

...在我发布这个问题之前的一秒钟,我意识到我可以删除导致问题的文件(duh).然而,搜索让我感到沮丧,想要找到答案.

eclipse eclipse-metadata

31
推荐指数
1
解决办法
1万
查看次数