假设您有一个包含IP地址的文件,每行包含一个地址:
10.0.10.1
10.0.10.1
10.0.10.3
10.0.10.2
10.0.10.1
Run Code Online (Sandbox Code Playgroud)
您需要一个shell脚本,它为每个IP地址计算它在文件中出现的次数.对于先前的输入,您需要以下输出:
10.0.10.1 3
10.0.10.2 1
10.0.10.3 1
Run Code Online (Sandbox Code Playgroud)
一种方法是:
cat ip_addresses |uniq |while read ip
do
echo -n $ip" "
grep -c $ip ip_addresses
done
Run Code Online (Sandbox Code Playgroud)
然而,它真的远没有效率.
如何使用bash更有效地解决这个问题?
(有一点要补充:我知道它可以通过perl或awk解决,我对bash中的更好解决方案感兴趣,而不是那些语言.)
附加信息:
假设源文件为5GB,运行算法的机器为4GB.因此,排序不是一种有效的解决方案,也不是多次读取文件.
我喜欢类似哈希表的解决方案 - 任何人都可以对该解决方案进行改进吗?
附加信息#2:
有些人问为什么我会在bash中使用它时更加困难,例如perl.原因是在机器上我必须这样做perl不适合我.这是一个定制的linux机器,没有我习惯的大多数工具.我认为这是一个有趣的问题.
所以,请不要责怪这个问题,如果你不喜欢它就忽略它.:-)
在javascript中创建对象的正确语法是什么,它将适用于大多数Web浏览器(我的意思是:IE 6 +,Firefox 2 +,Opera 9+)
这是有效的吗?
var a={ "class": "Person",
"name": "William Shakespeare",
"birthday": -12802392000000,
"nickname": "Bill"
} ;
Run Code Online (Sandbox Code Playgroud)
或者是这样的:
var a={ class: "Person",
name: "William Shakespeare",
birthday: -12802392000000,
nickname: "Bill"
} ;
Run Code Online (Sandbox Code Playgroud)
这两者有什么区别?
是否有Pythonic方法只运行一个程序实例?
我提出的唯一合理的解决方案是尝试在某个端口上将其作为服务器运行,然后第二个程序尝试绑定到同一个端口 - 失败.但这不是一个好主意,也许有比这更轻巧的东西?
(考虑到程序有时会失败,即段错误 - 所以像"锁定文件"这样的东西不起作用)
更新:提供的解决方案比仅存在一个不存在的服务器的端口要复杂得多且不太依赖,所以我必须使用那个.
现在看来越来越多的OS X应用程序正在为自定义控件做各种精美的绘图工作.像Twitterific,Things,EventBox,Versions等应用程序仅举几例....
所以基本上我正在寻找有关如何开始做这种事情的任何信息.不确定它是否只是通过子类化控件和使用自定义绘图来完成,或者它是否完全不同.
任何帮助是极大的赞赏.谢谢!
一个是数学家.这已经遍布办公室,我们希望看到谁可以提出更好的优化版本.
(((a+p) <= b) && (a == 0 || a > 1) && (b >= p)) &&
((b - (a + p) == 0) || (b - (a + p) > 1))
Run Code Online (Sandbox Code Playgroud)
编辑:所有数据都是正整数
编辑:更好==为简单而重构
下面是一个存储过程,用于根据单独检查所有字段来检查数据库中是否存在重复条目(不要问为什么我应该这样做,它只需要这样).
听起来非常简单,但SP失败了.问题是传递给SP的一些参数可能具有空值,因此sql应该读为"is null"而不是"= null".我已尝试使用exec()和sp_executesql的isnull(),case语句,coalesce()和动态sql,但未能实现其中任何一个.这是代码......
CREATE PROCEDURE sp_myDuplicateCheck
@userId int,
@noteType char(1),
@aCode char(3),
@bCode char(3),
@cCode char(3),
@outDuplicateFound int OUT
AS
BEGIN
SET @outDuplicateFound = (SELECT Top 1 id FROM codeTable
WHERE userId = @userId
AND noteType = @noteType
AND aCode = @aCode
AND bCode = @bCode
AND cCode = @cCode
)
-- Now set the duplicate output flag to a 1 or a 0
IF (@outDuplicateFound IS NULL) OR (@outDuplicateFound = '') OR (@outDuplicateFound = 0)
SET @outDuplicateFound = …Run Code Online (Sandbox Code Playgroud) 我一直在想一种新的编程语言.在尝试实现它之前,我想检查代码的语法,看看是否存在很多歧义.(我觉得很有趣的是它可能会把var ++++带到一个类)
显然我能做到DateTime.Now.After- DateTime.Now.Before但必须有更复杂的东西.
任何提示赞赏.
我有一个关于在Zend上传文件后重命名文件的问题.我不知道在哪里放置重命名过滤器.这就是我所拥有的.我试过搬东西,但我迷路了.目前它确实将文件上传到我的照片文件夹,但它没有重命名.谢谢你的帮助!
if($this->_request->isPost())
{
$formData = $this->_request->getPost();
if ($form->isValid($formData))
{
$adapter = new Zend_File_Transfer_Adapter_Http();
$adapter->setDestination(WWW_ROOT . '/photos');
$photo = $adapter->getFileInfo('Photo');
$adapter->addFilter('Rename', array(
$photo['Photo']['tmp_name'],
WWW_ROOT . '/photos/' . $this->memberId . '.jpg',
true
));
if ($adapter->receive())
{
echo 'renamed';
}
}
}
Run Code Online (Sandbox Code Playgroud) 作为我自己的"看看"教程,我正在构建一个PHP脚本来从POP3邮箱收集电子邮件.在尝试使用二进制附件时,我一直试图弄清楚如何处理附件信息.
给定一个将从电子邮件中收集的字符串:
------ = _ Part_16735_17392833.1229653992102内容类型:image/JPEG; 名称= trans2.jpg内容传输编码:BASE64 X-附件-ID:f_fow87t5j0内容处置:附件; 文件名= trans2.jpg
/ 9J/4AAQSkZJRgABAgEASABIAAD/4QxrRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUA AAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAUAAAAcgEyAAIAAAAUAAAAhodp
(......)
EAgEAgEAgEAgEAg8IBQRL/Lbe/tJrScHqZ2lkmE4XUP2XcSDZZ2VvZ28dtbsDIYmhkbRxAIJCAQC AQCAQf/ScyAQCAQCAQCAQCAQCAQCAQCAQCAQCAQf/9k = ------ = _ Part_16735_17392833.1229653992102--
有没有办法将数据保存到磁盘,以便它是一个可用的格式?
algorithm ×1
base64 ×1
bash ×1
benchmarking ×1
binary ×1
c# ×1
cocoa ×1
javascript ×1
json ×1
locking ×1
macos ×1
null ×1
objective-c ×1
parameters ×1
performance ×1
php ×1
process ×1
python ×1
refactoring ×1
scripting ×1
sql ×1
syntax ×1
t-sql ×1
zend-file ×1