如何搜索'<'在Windows中使用PowerShell中的ack文件?

时间:2011-07-29 06:55:24

标签: windows powershell escaping ack

我无法弄清楚如何逃避'<'字符,我很困惑'系统找不到指定的文件'错误。有人可以帮忙吗?

我在Windows XP中使用了PowerShell中的ack。

问题ack-grep: chars escaping与我的问题非常相似,但针对该问题提供和接受的解决方案对我不起作用。

PS C:\xampp\htdocs> ack abcd
<works as expected>
PS C:\xampp\htdocs> ack <
The redirection operator '<' is not supported yet.
At line:1 char:5
+ ack < <<<<
PS C:\xampp\htdocs> ack \<
The syntax of the command is incorrect.
PS C:\xampp\htdocs> ack '<'
The syntax of the command is incorrect.
PS C:\xampp\htdocs> ack '\<'
The syntax of the command is incorrect.
PS C:\xampp\htdocs> ack [<]
The system cannot find the file specified.
PS C:\xampp\htdocs> ack '[<]'
The system cannot find the file specified.
PS C:\xampp\htdocs> ack '[\<]'
The system cannot find the file specified.
PS C:\xampp\htdocs> ack \Q<\E
The system cannot find the file specified.

3 个答案:

答案 0 :(得分:4)

您是否有任何理由不想使用PowerShell的正则表达式搜索?

Select-String '<' *.*

## or
dir -r | Select-String '<'

答案 1 :(得分:0)

PowerShell中的转义字符是反引号:

PS C:\xampp\htdocs> ack `<

答案 2 :(得分:-1)

你的意思是awk吗?如果是这样,那么您所要做的就是:$ awk '/</ filename'

由于我没有安装ack,我无法验证100%,但我会尝试使用此代码:

ack  '<' --output '$1' -h

如果这不起作用,那么我建议您阅读man ackack --help页。