我为自己制造的"新手麻烦"道歉&为我的计算机语言掌握不力而道歉
我正在运行一台Windows7笔记本电脑,有一个大的文本文件(~4Gb(,我需要找到特定的字符串。
Windows 7中的大多数程序都无法处理该任务(文件太大,无法在Microsoft套件中的任何程序中打开(,所以我下载了cygwin,并尝试grep
特定的字符串。
问题是
(a( 4 Gb文件存储在我的非管理员帐户的桌面上。
(b( 我假设cygwin在管理帐户中运行(尽管我使用桌面cygwin图标来启动环境(。原因是在cygwin下,我看到了手柄A@Admin-THINK
(在联想Thinkpad笔记本电脑上运行(
grep
感兴趣的文件导致"无此类文件或目录">
我试图找到文件的路径(readlink
,realpath
(,但猜这些命令在这里不适用?
也尝试了/home/A/file
或/home/A/desktop/file
,但很明显,我的随机猜测失败了。
从窗口,文件应该在中
C:/Users/non_admin/desktop/folder/file
文件到使用cygwin的字符串grep
的正确路径是什么?
您可以使用/cygdrive
访问Windows文件系统。在你的情况下,试试
grep foo /cygdrive/c/Users/non_admin/Desktop/folder/file
从窗口,您可以从上下文菜单项Copy as path
中获得正确的文件路径,并将其放入复制/粘贴缓冲区。
在Cygwin mintty中,使用
FilePath=<paste>
其中<paste>
表示使用mintty上下文菜单中的粘贴来生成具有该路径值的变量。
然后使用
grep <string> $(cygpath -u "$FilePath")
以搜索文件。"
是在文件名包含空格的情况下使用的。
HTH-