Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux &引用;can';t读取文件夹";调用sed时出错_Linux_Bash_Sed - Fatal编程技术网

Linux &引用;can';t读取文件夹";调用sed时出错

Linux &引用;can';t读取文件夹";调用sed时出错,linux,bash,sed,Linux,Bash,Sed,我试图在一个巨大的日志文件中找到“机器人”。他们都在一秒钟内登录、更改密码和注销 我想编写Bash命令,该命令将显示满足以下条件的所有配置文件: 用户登录、用户更改密码、用户在同一秒内注销(所有3个操作必须在1秒内完成) 这些操作(登录、更改、注销)一个接一个地发生,其间没有其他条目 fxsciaqulmlk是日志文件中的典型配置文件名 日志文件的一小部分: Mon, 22 Aug 2016 13:15:39 +0200|178.57.66.225|fxsciaqulmlk| - |user

我试图在一个巨大的日志文件中找到“机器人”。他们都在一秒钟内登录、更改密码和注销

我想编写Bash命令,该命令将显示满足以下条件的所有配置文件:

  • 用户登录、用户更改密码、用户在同一秒内注销(所有3个操作必须在1秒内完成)
  • 这些操作(登录、更改、注销)一个接一个地发生,其间没有其他条目
fxsciaqulmlk
是日志文件中的典型配置文件名

日志文件的一小部分:

Mon, 22 Aug 2016 13:15:39 +0200|178.57.66.225|fxsciaqulmlk| - |user logged in| -
Mon, 22 Aug 2016 13:15:39 +0200|178.57.66.225|fxsciaqulmlk| - |user changed password| -
Mon, 22 Aug 2016 13:15:39 +0200|178.57.66.225|fxsciaqulmlk| - |user logged off| -
Mon, 22 Aug 2016 13:15:42 +0200|178.57.66.225|faaaaaa11111| - |user logged in| -
Mon, 22 Aug 2016 13:15:49 +0200|178.57.66.215|terdsfsdfsdf| - |user logged in| -
Mon, 22 Aug 2016 13:15:49 +0200|178.57.66.215|terdsfsdfsdf| - |user changed password| -
Mon, 22 Aug 2016 13:15:49 +0200|178.57.66.215|terdsfsdfsdf| - |user logged off| -
Mon, 22 Aug 2016 13:15:59 +0200|178.57.66.205|erdsfsdfsdf| - |user logged in| -
Mon, 22 Aug 2016 13:15:59 +0200|178.57.66.205|erdsfsdfsdf| - |user logged in| -
Mon, 22 Aug 2016 13:15:59 +0200|178.57.66.205|erdsfsdfsdf| - |user changed password| -
Mon, 22 Aug 2016 13:15:59 +0200|178.57.66.205|erdsfsdfsdf| - |user logged off| -
Mon, 22 Aug 2016 13:17:50 +0200|178.57.66.205|abcbbabab| - |user logged in| -
Mon, 22 Aug 2016 13:17:50 +0200|178.57.66.205|abcbbabab| - |user changed password| -
Mon, 22 Aug 2016 13:17:50 +0200|178.57.66.205|abcbbabab| - |user changed profile| -
Mon, 22 Aug 2016 13:17:50 +0200|178.57.66.205|abcbbabab| - |user logged off| -
Mon, 22 Aug 2016 13:19:19 +0200|178.56.66.225|fxsciulmla| - |user logged in| -
Mon, 22 Aug 2016 13:19:19 +0200|178.56.66.225|fxsciulmla| - |user changed password| -
Mon, 22 Aug 2016 13:19:19 +0200|178.56.66.225|fxsciulmla| - |user logged off| -
Mon, 22 Aug 2016 13:20:42 +0200|178.57.67.225|faaaa0a1111| - |user logged in| -
我写了这段代码:

#!/bin/bash
sed '
    /logged in\s*$/! d
    :1
    $! N
    /logged in\s*$/D
    /\(logged \(in\|off\)\|changed password\)$/! s/\n[^\n]*$//
    /logged off$/! b1
    ' /home/indra/Desktop/Untitled Folder/log.txt
但当我尝试运行此代码时,我得到了以下信息:

sed: can't read Folder/log.txt: No such file or directory

如何修复此问题?

无标题文件夹
周围加引号,因为它包含空格。可能在第一列中启动所有sed输入

#!/bin/bash
sed '
/logged in\s*$/! d
:1
$! N
/logged in\s*$/D
/\(logged \(in\|off\)\|changed password\)$/! s/\n[^\n]*$//
/logged off$/! b1
    ' /home/indra/Desktop/"Untitled Folder"/log.txt

输入文件是什么样子的,预期的输出是什么?给定虚拟数据,此处没有错误。预期输出?>>显示符合以下条件的所有配置文件:-用户登录、用户更改密码、用户在同一秒内登录(所有3个操作必须在1秒内完成)-这些操作(登录、更改、注销)一个接一个发生,其间没有其他实体。。。。。从log.txt不打算查看链接,在这里发布最小的示例数据,阅读关于您的问题可能会很好地编辑您的问题以使其清楚,在注释中添加内容通常不会使事情更清楚。我希望现在很清楚没有错误,但脚本不会在Bash输出任何内容尝试编辑-在第1列中启动sed内容