我有一个MSSQL数据库转储我试图grep通过。 但是,grep似乎并没有工作。 这是该文件的一个片段。
... ALTER DATABASE [Documents] SET RECURSIVE_TRIGGERS OFF GO ALTER DATABASE [Documents] SET DISABLE_BROKER GO ALTER DATABASE [Documents] SET AUTO_UPDATE_STATISTICS_ASYNC OFF ...
但是,当我做一个grep的时候,我得到了纳达。
$ cat Documents.sql | grep -i 'alter' $ <nothing> $ cat Documents.sql | grep -i 'go' $ <nothing>
对于咯咯我创build了另一个文件“tempfile”:
$ cat tempfile alter Alter ALTER $
并运行相同的grep:
$ cat tempfile | grep -i 'alter' alter Alter ALTER
关于为什么grep不能在某些文件上工作的想法? 关心我,当我不得不通过一堆东西来寻找一个小块时,它可能会错过一些东西。 思考?
啊。 谢谢。
$ file -bi Documents.txt text/plain; charset=utf-16le $ vi Documents.txt set encoding=utf-8 set fileencoding=utf-8 $ file -bi Documents.txt text/plain; charset=utf-8 $ cat Documents.txt | grep -i 'alter' ALTER DATABASE [Documents] SET COMPATIBILITY_LEVEL = 120 ALTER DATABASE [Documents] SET ANSI_NULL_DEFAULT OFF ALTER DATABASE [Documents] SET ANSI_NULLS OFF ALTER DATABASE [Documents] SET ANSI_PADDING OFF