0

在我的脚本中运行以下行会给我一个 Permission denied 错误:

$config_out | sed -e 's#name="in" value=""#name="in" value="1600"#' > $config_out".tmp"

在我有之前$config_out | sed -e 's#name="in" value=""#name="in" value="1600"#' > $config_out,所以最后没有.tmp。我在某处读到,当您尝试将输出传输到您正在从中读取它的同一文件时,您会遇到错误。但是当我将它写入另一个文件时,我不知道为什么会出现该错误。

4

1 回答 1

1

$config_out文件名还是命令名?如果它是一个文件,那么您需要cat $config_out | sed ...sed ... < $config_out > $config_out.tmp。但是,如果它是一个命令,则第一个命令可能已被截断/覆盖(shell 脚本或 perl 脚本或其他什么?)。

于 2012-06-14T17:52:29.873 回答