我用sed来更改一个单词,文件现在被删除了

我用sed来更改一个单词,文件现在被删除了,sed,Sed,我打算使用sed命令将CIS132更改为CIS132,并介绍Unix/Linux。 我做到了: 我得到一个命令提示符,所以我想一切都准备好了。然后我进行了cat训练,没有得到任何输出。那里发生了什么事? 我能取回我以某种方式抹掉的内容吗 谢谢 杰森也许是你干的: sed 's/CIS132/CIS132 Introduction to Unix\/Linux/g' CISed > CISed 。。而这不是替换的方法--in-place。正确的方法是: sed --in-place 's/

我打算使用sed命令将CIS132更改为CIS132,并介绍Unix/Linux。 我做到了:

我得到一个命令提示符,所以我想一切都准备好了。然后我进行了cat训练,没有得到任何输出。那里发生了什么事? 我能取回我以某种方式抹掉的内容吗

谢谢

杰森

也许是你干的:

sed 's/CIS132/CIS132 Introduction to Unix\/Linux/g' CISed > CISed
。。而这不是替换的方法--in-place。正确的方法是:

sed --in-place 's/CIS132/CIS132 Introduction to Unix\/Linux/g' CISed

  • 那里发生了什么事
将标准输出重定向到名为CISed的新空文件(您使用了
)。它会删除文件中的任何内容

  • 我能取回我以某种方式抹掉的内容吗
你不能。您只需将其替换为一个空文件


摘自您的评论:

这是您的shell历史记录:

971 cat CISed
972 grep 'CIS132' | sed 's/CIS132/CIS132 Introduction to Unix/Linus/g' CISed
973 sed '1,2s/CIS132/CIS132 Introduction to Unix/Linus/g' CISed
974 sed '1,3s/CIS132/CIS132 Introduction to Unix"/"Linus/g' CISed
975 sed 's/CIS132/CIS132 Introduction to Unix/Linux/g' > CISed
976 sed 's/CIS132/CIS132 Introduction to Unix/Linux/g' CISed
977 sed 's/CIS132/CIS132 Introduction to Unix'/'Linux/g' CISed
978 sed 's/CIS132/CIS132 Introduction to Unix\/Linux/g' CISed
979 cat CISed
980 cat CISed
981 ls
982 cat CISed

971中,您阅读了内容,内容就在那里。然后,在975中,尽管命令失败,重定向操作符(
)创建一个名为
CISed
的新空文件,此时文件将被擦除。

如果您没有重定向或就地使用,并且命令没有在标准输出中打印任何内容,这只意味着文件在手之前是空的。你能把贝壳的历史记录贴出来吗?也许我们可以帮助您。971 cat-CISed 972 grep'CIS132'| sed's/CIS132/CIS132 Unix简介/Linus/g'CISed 973 sed'1,2s/CIS132/CIS132 Unix简介/Linus/g'CISed 974 sed'1,3s/CIS132/CIS132 Unix简介“/”Linus/g'CISed 975 sed/CIS132/CIS132 Unix简介/Linux/g'>CISed 976 sed/CIS132/CIS132 Unix简介/Linux/g'CISed 977 sed/CIS132/CIS132 Unix简介/Linux/g'CISed 978 sed/CIS132/CIS132 Unix简介\/Linux/g'CISed 979 cat CISed 980 cat CISed 981 ls 982 cat CISed 971在哪里我读过了,除了978之外,我还有错误
971 cat CISed
972 grep 'CIS132' | sed 's/CIS132/CIS132 Introduction to Unix/Linus/g' CISed
973 sed '1,2s/CIS132/CIS132 Introduction to Unix/Linus/g' CISed
974 sed '1,3s/CIS132/CIS132 Introduction to Unix"/"Linus/g' CISed
975 sed 's/CIS132/CIS132 Introduction to Unix/Linux/g' > CISed
976 sed 's/CIS132/CIS132 Introduction to Unix/Linux/g' CISed
977 sed 's/CIS132/CIS132 Introduction to Unix'/'Linux/g' CISed
978 sed 's/CIS132/CIS132 Introduction to Unix\/Linux/g' CISed
979 cat CISed
980 cat CISed
981 ls
982 cat CISed