小编kni*_*ttl的帖子

调用uniq并在shell中以不同的顺序排序

在shell脚本中调用它们时uniq和sort的顺序是否有区别?我在这里谈论时间和空间.

grep 'somePattern' | uniq | sort
Run Code Online (Sandbox Code Playgroud)

grep 'somePattern' | sort | uniq
Run Code Online (Sandbox Code Playgroud)

对140 k行文本文件的快速测试显示第一种方法略有提速(5.5 s vs 5.0 s)(获取uniq值然后排序)

我不知道如何衡量内存使用情况

现在的问题是:订单会有所作为吗?或者它是否依赖于返回的greplines(很多/几个重复)

我很期待你的回答

sorting shell optimization performance uniq

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

将整数转换为字节但不溢出

如何在C#中将整数值转换/转换为字节值但不包围或抛出异常?我正在寻找的是某种bool byte.TryConvert(int i, out b)方法.

我试过Convert.ToByte并指挥演员.

byte b = Convert.ToByte(257); // throws OverflowException
byte b = (byte)257; // results in 1
byte b = (byte)(-1); // results in 255
Run Code Online (Sandbox Code Playgroud)

或者我必须将"反向转换"(缺少更好的词)字节转换为int并将其与原始值进行比较?

.net c# byte integer casting

3
推荐指数
1
解决办法
1505
查看次数

LINQ .Aggregate与结果选择器参数或直接调用方法的区别

Aggregate通过传递resultSelector函数或直接将Aggregate结果值传递给函数来使用LINQ 方法时是否存在实际差异?

代码示例(有更好的方法,但这很好地说明了问题):

var list = new string[] { "a", "b", "c" };
list.Aggregate(new StringBuilder(), (sb, s) => sb.AppendLine(s), sb => sb.ToString());
list.Aggregate(new StringBuilder(), (sb, s) => sb.AppendLine(s)).ToString();
Run Code Online (Sandbox Code Playgroud)

最后,两个语句都返回相同的字符串.是否有可以单向编写的代码,而不是其他代码?

c# linq fold

3
推荐指数
1
解决办法
580
查看次数

为什么在执行单元测试时没有调用我的模拟方法?

前言:

这个问题和答案旨在作为对由于误用 Mockito 或误解 Mockito 如何工作以及与用 Java 语言编写的单元测试交互而产生的大多数问题的规范答案。


我已经实现了一个应该进行单元测试的类。请注意,此处显示的代码只是一个虚拟实现,Random仅供说明之用。真实的代码将使用真实的依赖项,例如另一个服务或存储库。

public class MyClass {
  public String doWork() {
    final Random random = new Random(); // the `Random` class will be mocked in the test
    return Integer.toString(random.nextInt());
  }
}
Run Code Online (Sandbox Code Playgroud)

我想使用 Mockito 来模拟其他类,并编写了一个非常简单的 JUnit 测试。但是,我的类在测试中没有使用模拟:

public class MyTest {
  @Test
  public void test() {
    Mockito.mock(Random.class);
    final MyClass obj = new MyClass();
    Assertions.assertEquals("0", obj.doWork()); // JUnit 5
    // Assert.assertEquals("0", obj.doWork());  // JUnit 4
    // this fails, because the `Random` mock is not …
Run Code Online (Sandbox Code Playgroud)

java junit unit-testing mocking mockito

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

优化grep,awk和sed shell的东西

我试图从"IPCop"总结日志文件中的不同端口的流量,所以我为我的shell编写和命令,但我认为可以优化命令.

首先来自我的日志文件的一行:

01/00:03:16 kernel INPUT IN=eth1 OUT= MAC=xxx SRC=xxx DST=xxx LEN=40 TOS=0x00 PREC=0x00 TTL=98 ID=256 PROTO=TCP SPT=47438 DPT=1433 WINDOW=16384 RES=0x00 SYN URGP=0 
Run Code Online (Sandbox Code Playgroud)

现在我用以下Command命令包含端口1433的所有长度的总和

grep 1433 log.dat|awk '{for(i=1;i<=10;i++)if($i ~ /LEN/)print $i};'|sed 's/LEN=//g;'|awk '{sum+=$1}END{print sum}'
Run Code Online (Sandbox Code Playgroud)

我需要for循环,因为LEN-col始终不在同一位置.

有关优化此命令的任何建议吗?

关心雷内

linux shell awk grep sed

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

如何在C#中调用string的委托?

是否可以通过变量名称(作为字符串)调用存储在变量中的委托?我想我必须使用反射机制,但我没有得到任何地方

示例代码:

class Demo {
  public delegate int DemoDelegate();

  private static int One() {
    return 1;
  }
  private static void CallDelegate(string name) {
    // somehow get the value of the variable with the name
    // stored in "name" and call the delegate using reflection
  }
  private static void CallDelegate(string name, DemoDelegate d) {
    d();
  }
  static void main(string[] args) {
    DemoDelegate one = Demo.One;
    CallDelegate(one);
    // this works, but i want to avoid writing the name of the variable/delegate twice: …
Run Code Online (Sandbox Code Playgroud)

.net c# string reflection delegates

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

PHP缩小有用吗?

我可以理解,通过minifing js代码将减小它的大小,将有助于通过网络发送,但它是有用的缩小PHP?

如何混淆将有助于在PHP中执行?

php minify

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

Shell脚本,将命令值保存到变量

我试图VARI在同一行中打印后跟逗号的值,这样我就可以拥有这些值的csv文件,但我无法保存值 VARI = 'cat filename | head -1 | cut -d, -f${i}'

i=0
while (( i<130)) ;
do
  if [[ $i -eq 1 ||  $i -eq 9 || $i -eq 12 || $i -eq 23 || $i -eq 25 || $i -eq 29 ]]
  then
    VARI = 'cat filename | head -1 | cut -d, -f${i}'
    echo  "$VARI ,"   
  fi
  let i=$i+1;
done
Run Code Online (Sandbox Code Playgroud)

输出预期是

4,abc,5,8,xyz,9
Run Code Online (Sandbox Code Playgroud)

请让我知道我做错了什么,谢谢!

linux shell echo

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

单击时如何使deck.js演示文稿前进

我如何配置deck.js,以便当我点击页面上的任何位置时它会转到下一张幻灯片?非常像Powerpoint或Impress.

javascript jquery deck.js

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

如何将"ps"的所有输出通过管道传递到shell脚本中进行进一步处理?

当我运行此命令时:

ps aux|awk {'print $1,$2,$3,$11'}
Run Code Online (Sandbox Code Playgroud)

我得到了用户列表,PID,CPU%和实际命令.我想将所有这些列表都输入到shell脚本中以计算CPU%,如果大于5,那么通过PID来终止进程.

我尝试将它管道化为一个简单的shell脚本,即

ps aux|awk {'print $1,$2,$3,$11'} | ./myscript
Run Code Online (Sandbox Code Playgroud)

我脚本的内容是:

#!/bin/bash
# testing using positional parameters
echo "$1 $2 $3 $4" 
Run Code Online (Sandbox Code Playgroud)

但我得到一个空白输出.知道怎么做吗?

非常感谢!

linux bash shell ps

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