加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl – 系统命令打印到终端?

发布时间:2020-12-16 06:06:42 所属栏目:大数据 来源:网络整理
导读:我正在编写一个Perl脚本,允许我更改终端选项卡的磁贴,但是,每次运行它时,都会在我的终端线上打
我正在编写一个Perl脚本,允许我更改终端选项卡的磁贴,但是,每次运行它时,都会在我的终端线上打印“-n -e”.如果我保留这些选项,只需打印一个空白行.有没有什么方法可以在perl中执行系统命令,而且我的终端上没有显示任何代码残留?

1 #!/usr/bin/perl
  2 #sets the title on terminal tabs (mac OSX)
  3 
  4 #use strict;
  5 use warnings;
  6  
  7 #sets title of term window to input from user.  
  8 my $textline="'echo -n -e "33]0;";
  9 $textline = $textline . "@ARGV" . '07"'';
 10 
 11 system "'$textline'"; 
 12

谢谢

解决方法

我想-n和-e会得到回应,因为你的echo版本不能识别这些选项并将它们视为文字文本来回显.

但是你知道吗,Perl有自己的用于回显文本的工具:print.

print("33]0;$title07");

您可能需要在之后刷新缓冲区:

use IO::Handle qw( );
STDOUT->flush();

如果你不介意关闭缓冲,或者只是以下内容:

$| = 1;

PS – 你的引语(”echo …”)毫无意义,但它们会陷入虚无,所以它们不会引起问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读