有人可以帮助我解决我在这里做错了什么,一直在摸不着头脑.我只是对irssi脚本进行了一些小改动,我不知道perl.
Run Code Online (Sandbox Code Playgroud)$selectedname = <STDIN>; $Nameslist = `grep -i -w '$selectedname'~/file`;
它正常工作我遇到的问题是看起来变量未正确插入.例如,如果我在命令行中使用单词test键入相同的命令,则会显示3行.但是,如果我在这个脚本中使用相同的单词,那么它就会变空.
我知道它工作正常,因为我可以做*作为输入,它会显示整个文件.它只是不使用输入的字符串.
任何帮助将非常感谢,这真的让我很难过.
实际上,当您使用 时<STDIN>,会出现一个换行符。所以你需要删除换行符。您可以使用chomp删除新行字符
代码:
$selectedname = <STDIN>;
chomp($selectedname);
$Nameslist = `grep -i -w '$selectedname'~/file`;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |