Tag: freebsd的

一种确定进程的“真实”内存使用情况的方法,即私人脏RSS?

诸如“ps”和“top”之类的工具报告各种内存使用情况,例如VM大小和驻留集大小。 但是,这些都不是“真正”的内存使用情况: 程序代码在同一程序的多个实例之间共享。 共享库程序代码在使用该库的所有进程之间共享。 一些应用程序分离进程并与他们共享内存(例如通过共享内存段)。 虚拟内存系统使VM大小报告几乎没有用处。 当一个进程被换出时RSS是0,使得它不是很有用。 等等 我发现Linux报告的私人脏RSS是最接近“真实”内存使用情况的。 这可以通过将/proc/somepid/smaps所有Private_Dirty值相加来获得。 但是,其他操作系统是否提供了类似的function? 如果不是,还有什么select? 特别是,我对FreeBSD和OS X感兴趣。

检查string在shell脚本中是否既不空也不空格

我试图运行下面的shell脚本,应该检查一个string既不是空格也不是空的。 但是,我得到的所有3个string的输出相同。 我曾尝试使用“[[”语法,但无济于事。 这是我的代码: str="Hello World" str2=" " str3="" if [ ! -z "$str" -a "$str"!=" " ]; then echo "Str is not null or space" fi if [ ! -z "$str2" -a "$str2"!=" " ]; then echo "Str2 is not null or space" fi if [ ! -z "$str3" -a "$str3"!=" " ]; then […]

确定在某个端口上侦听的进程pid

正如标题所说,我正在运行多个游戏服务器,并且每个游戏服务器都有相同的name但具有不同的PID和port号。 我想匹配正在侦听某个端口的服务器的PID ,然后我想杀死这个进程。 我需要这个来完成我的bash脚本。 这甚至可能吗? 因为它没有在网上find任何解决scheme。

Python软件包脱机安装

下载一个python软件包的最佳方式是什么,它是从pypi的依赖关系在另一台机器上离线安装? 有没有简单的方法来做到这一点用pip或easy_install? 我试图在未连接到互联网的FreeBSD盒子上安装请求库。

如何在Mac上获得GNU的readlink -f的行为?

在Linux上, readlink实用程序接受附加链接readlink的选项-f 。 这似乎不适用于Mac和BSD系统。 相当于什么? 这里有一些debugging信息: $ which readlink; readlink -f /usr/bin/readlink readlink: illegal option -f usage: readlink [-n] [file …]

InetAddress.getLocalHost()抛出UnknownHostException

我在不同的操作系统上testing我们的服务器应用程序(编写的Java),并认为由于良好的Java集成,OpenSolaris(2008.11)将是最麻烦的。 原来我错了,因为我最终得到了一个UnknownHostException try { computerName = InetAddress.getLocalHost().getHostName(); if (computerName.indexOf(".") > -1) computerName = computerName.substring(0, computerName.indexOf(".")).toUpperCase(); } catch (UnknownHostException e) { e.printStackTrace(); } 输出是: java.net.UnknownHostException: desvearth01: desvearth01 at java.net.InetAddress.getLocalHost(InetAddress.java:1353) 但是, nslookup desvearth01返回正确的IP地址, nslookup localhost按预期返回127.0.0.1 。 而且,相同的代码在FreeBSD上完美运行。 OpenSolaris有什么特别的东西我不知道? 任何提示表示赞赏,谢谢。