Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.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中最新将行存储在文件中_Linux_Bash - Fatal编程技术网

如何在linux中最新将行存储在文件中

如何在linux中最新将行存储在文件中,linux,bash,Linux,Bash,我有一些行可以将我的脚本的日志存储在一个单独的文件中,它工作得很好,但是它们的问题是它将最新的日志存储在一个文件的底部,这是Linux的默认行为。我想要的是,它将输出重定向到一个日志文件,作为最新的日志存储在顶部。 以下是我在Hooks_脚本顶部包含的行,这些行将在这些行下面编写的每个命令的输出存储在单独的日志文件中 #!/bin/bash exec 3>&1 4>&2 trap 'exec 2>&4 1>&3' 0 1 2 3 exec

我有一些行可以将我的脚本的日志存储在一个单独的文件中,它工作得很好,但是它们的问题是它将最新的日志存储在一个文件的底部,这是Linux的默认行为。我想要的是,它将输出重定向到一个日志文件,作为最新的日志存储在顶部。 以下是我在Hooks_脚本顶部包含的行,这些行将在这些行下面编写的每个命令的输出存储在单独的日志文件中

#!/bin/bash
exec 3>&1 4>&2
trap 'exec 2>&4 1>&3' 0 1 2 3
exec 1>>/tmp/git_hooks_logs.log 2>&1
#create logs of every command written below these lines

普遍的共识是,没有可靠的方法可以在一次操作中做到这一点,有几种方法可以在多个操作中做到这一点,如果这对您很重要的话,其中一些方法可以在一行上实现。
您可能想看看

这样做会非常低效(每次添加一行时都需要重新写入整个文件)。您应该看看如何从“底部”到“顶部”处理日志文件。请您详细说明一下,这是一个程序
tac
,如果
cat
我不想在终端中读取它,我希望它以反向顺序存储在日志文件中,因为当前操作系统中处理文件的方式,如果不重写整个文件,这是不可能的。重新组织流程,使其尊重限制;)您可以保留日志的另一份副本,每次添加一行后,该副本将被反向排序(使用
tac
)。或者,按正向顺序写入日志,并提供日志读取器,允许用户按最后一个顺序查看日志。你可以写一个简单的csv文件,人们可以在excel中查看。有可能吗?有可能,也就是说,写一个csv文件吗?当然,我在很多场合都这样做过。这里有一个摘录(没有填写太多数据):
entrydate、lastname、firstname、middlename、spfirstname、splastname、spmiddle、apt、streetaddr、city、region、zip、email、ext、phonenum、phhrs、phonenum2、phhrs2、phonenum3、area、phonex、phonex2、phone2、area3、phonex3“20140125”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“自然康复中心”、“,很抱歉,无法获取phonex3和“20140125”之间的换行符