小编San*_*ing的帖子

使用awk对齐文本文件中的列?

awk是"输入"转换为"所需的输出"有用吗?

输入

testing speed of encryption
test 0 (64 bit key, 16 byte blocks): 2250265 operations in 1 seconds (36004240 bytes)
test 1 (128 bit key, 64 byte blocks): 879149 operations in 1 seconds (56265536 bytes)
test 2 (128 bit key, 256 byte blocks): 258978 operations in 1 seconds (66298368 bytes)
test 3 (128 bit key, 1024 byte blocks): 68218 operations in 1 seconds (69855232 bytes)
test 4 (128 bit key, 8192 byte blocks): 8614 operations in 1 …
Run Code Online (Sandbox Code Playgroud)

linux bash awk

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

如何从数组中减去数组?

当我尝试以下

#!/usr/bin/perl

use strict;
use warnings;
use Data::Dumper;

my @bl = qw(red green blue);
my @a = qw(green yellow purple blue pink);

print Dumper [grep {not @bl} @a];
Run Code Online (Sandbox Code Playgroud)

我得到一个空数组.我原以为会@bl减去@a,所以输出是yellow purple pink.

这有什么不对?

arrays perl

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

Perl可以检测数组吗?

我有这个脚本

#!/usr/bin/perl

use warnings;
use strict;
use Data::Dumper;

my %x1 = ();
$x1{"a"} = "e";

my %x2 = ();
$x2{"a"} = ["b","c"];

p(\%x1);
p(\%x2);

sub p {
    my $x = shift @_;
    print $x->{a};
    print "\n";
}
Run Code Online (Sandbox Code Playgroud)

哪个输出

e
ARRAY(0x2603fa0)
Run Code Online (Sandbox Code Playgroud)

问题是我不知道输入是数组还是标量,当它是数组时我也想打印这些值.

可以p修改这样做吗?

arrays perl

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

如何静态链接使用./configure的Linux软件?

我想编译NRPE静态,所以我可以将已编译的二进制文件复制到OmniOS服务器,我不希望在其上安装gcc.我更喜欢从存储库安装带有SSl支持的NRPE,但是这样不存在,所以我想自己编译它.但是,./configure脚本不包含它接缝的静态选项

~/nrpe-2.15# ./configure --help | grep static
~/nrpe-2.15# ./configure --help | grep share
  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
Run Code Online (Sandbox Code Playgroud)

如何编译configure静态使用的程序?

linux gcc configure static-linking omnios

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

如何只在几天内生成DateTime :: Duration输出?

此代码查找今天和固定日期之间的差异.

#!/usr/bin/perl

use strict;
use warnings;
use Data::Dumper;

use DateTime ();
use DateTime::Duration ();
use DateTime::Format::Strptime ();

my $date = "23/05-2022";

my $parser = DateTime::Format::Strptime->new(
    pattern     => '%d/%m-%Y',
    time_zone   => 'local',
    );

$date = $parser->parse_datetime($date);

my $today = DateTime->today(time_zone=>'local');

my $d = DateTime::Duration->new($today - $date);

print Dumper $d->delta_days;
Run Code Online (Sandbox Code Playgroud)

问题是只有输出-22天.

如果我这样做,print Dumper $d;我也可以看到-130个月.

$VAR1 = bless( {
                 'seconds' => 0,
                 'minutes' => 0,
                 'end_of_month' => 'preserve',
                 'nanoseconds' => 0,
                 'days' => -22,
                 'months' => -130
               }, 'DateTime::Duration' );
Run Code Online (Sandbox Code Playgroud)

如何让它在几天内输出结果? …

perl

11
推荐指数
1
解决办法
6866
查看次数

可以输入if语句吗?

我有一个脚本,如果它运行,每次输出大约10行.这些行的内容各不相同.

我真的希望能够grep在输出中根据输出做不同的事情.

在伪这是我想做的

cat /etc/password | \\
if [ grep "root" $STDOUT ]; then
   echo "root is found"

elif [ grep "nobody" $STDOUT ]; then
   echo "nobody is found"

fi
Run Code Online (Sandbox Code Playgroud)

我在这里cat /etc/password作为一个例子,但应该用我上面提到的脚本替换它.

问题是,我怎么输出保持从cat /etc/passwordif/ elif条件?

linux bash

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

如何测试散列中是否存在值?

假设我有这个

#!/usr/bin/perl

%x = ('a' => 1, 'b' => 2, 'c' => 3);
Run Code Online (Sandbox Code Playgroud)

我想知道值2是否是哈希值%x.

怎么做的?

perl

10
推荐指数
5
解决办法
4万
查看次数

可以在几行中分解长sed命令吗?

我的sed命令很长

sed -i 's/append ro initrd=initrd.img quiet splash nbdport=2000/append ro initrd=initrd.img quiet splash nbdport=2000 video=LVDS-1:d/g' /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default
Run Code Online (Sandbox Code Playgroud)

是否可以分解几行以使其更清楚它的作用?

像这样的东西?

sed -i 's/
append ro initrd=initrd.img quiet splash nbdport=2000
/
append ro initrd=initrd.img quiet splash nbdport=2000 video=LVDS-1:d
/g'
/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default
Run Code Online (Sandbox Code Playgroud)

linux bash command-line sed

10
推荐指数
2
解决办法
3078
查看次数

检查数组中元素的更快方法?

此函数exists与哈希相同.

我计划使用它很多.

它能以某种方式进行优化吗?

my @a = qw/a b c d/;

my $ret = array_exists("b", @a);

sub array_exists {
    my ($var, @a) = @_;

    foreach my $e (@a) {
        if ($var eq $e) {
            return 1;
        }
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

arrays perl

9
推荐指数
4
解决办法
4297
查看次数

如何将数组从行顺序重写为列顺序?

我有这个双for循环,我有行序和列顺序数组索引,这应该是性能不好.

  for (int row = 0; row < height; row++) {
    for (int col = 0; col < width; col++) {

      /* Column-major order */
      d = array_a[col*height +row];

      if (d < 0) { d = 0; }

      /* Row-major order */
      /* Map from x=0,y=0 at buttom left corner to
         0,0 at top left corner */
      array_b[width*(height-1 -row) + col] = d;

    }
  }
Run Code Online (Sandbox Code Playgroud)

是否有关于如何从一个重写到另一个的方法/方法?

当我尝试将最后一个重写为列顺序时,数据会变得歪斜.不能改写吗?

桑德拉

c c++

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

标签 统计

perl ×5

linux ×4

arrays ×3

bash ×3

awk ×1

c ×1

c++ ×1

command-line ×1

configure ×1

gcc ×1

omnios ×1

sed ×1

static-linking ×1