小编cha*_*dry的帖子

从$ PATH变量中删除冗余路径

我在$ PATH变量中定义了相同的路径6次.

我没有退出检查它是否有效.

如何删除重复项?

$ PATH变量如下所示:

echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/flacs/Programmes/USFOS/bin:/home/flacs/Programmes/USFOS/bin:/home/flacs/Programmes/USFOS/bin:/home/flacs/Programmes/USFOS/bin:/home/flacs/Programmes/USFOS/bin:/home/flacs/Programmes/USFOS/bin
Run Code Online (Sandbox Code Playgroud)

我该怎么把它重置为

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Run Code Online (Sandbox Code Playgroud)

linux bash path environment-variables sh

122
推荐指数
5
解决办法
27万
查看次数

Perl关闭管道没有错误

我正在使用Perl执行外部程序,并且如果在运行时返回特定字符串,则希望结束其执行。下面的代码根据需要中断执行,但是在执行最后一行(关闭)时会返回错误消息。

open (my $out, "-|", "usfos $memory<input-$cpu.scr");
while (<$out>) {
    if ($_ =~ /MIN   STEP  LENGTH/) {
        last;
    }
}
close $out;
Run Code Online (Sandbox Code Playgroud)

这是所显示的错误的一部分(外部程序还会返回错误消息):

...forrtl: The pipe is being closed.
forrtl: severe (38): error during write, unit 6, file CONOUT$
Run Code Online (Sandbox Code Playgroud)

所以我认为这是因为Perl试图写一个封闭的句柄。如何避免打印任何内容?

perl pipe

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

使用Perl在数组中查找值

我有两个数组@input0@input1.我想要一个遍历每个值的for循环,@input1如果值存在@input0,则值保存在一个新数组中@input.

所有数组仅包含数字.每个数组元素最多有10个数字(见下文):

@input0 = {10061 10552 10553 10554 10555 10556 10557 10558 10559 10560, 10561 10562 10563 10564 10565 10566 10567 10573 10574 10575, ...}

@input1 = {20004 20182 ...}
Run Code Online (Sandbox Code Playgroud)

arrays perl

0
推荐指数
1
解决办法
177
查看次数

标签 统计

perl ×2

arrays ×1

bash ×1

environment-variables ×1

linux ×1

path ×1

pipe ×1

sh ×1