为什么在PowerShell中没有实现输入重定向?
要做这样的事情:
mysql -u root < create.sql
Run Code Online (Sandbox Code Playgroud)
我不得不切换到"cmd.exe".
有没有在PowerShell中执行此操作的替代方法?
请注意,输出重定向">"在PowerShell中实现.在给出答案之前请考虑这个.
PowerShell相当于'less'是什么?
我看到'更多',但它缺乏我依赖的一些功能(例如搜索文件)
我寻找一个寻呼机(相当于'少'),它允许一次搜索(匹配或忽略大小写),多个文件等.
我们的一些服务器运行Windows 2008,我缺乏安装cygwin的管理员权限
我听过Windows 2008,MSFT一起行动并提供了一些易于管理的工具.
更新:
我应该给出一些背景信息:
谢谢
在我的PowerShell脚本中,我在许多文件上运行Select-String,查找通过变量($ id)传递给它的字符串:
foreach ($file in (ls "path\to\files")) {
$found = $false
$found = Select-String -Path $file $id -Quiet
if ($found) {
break
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,$ id变量有时会像"\ C"或"\ T"这样,Select-String会尝试将其解释为转义序列.这些不是有效的转义序列,因此Select-String会引发错误.它们不是转义序列(例如,它可能是文件路径的一部分,例如"C:\ Test"),那么如何防止PowerShell/Select-String将它们解释为?我试过在$ id周围使用括号而没有运气.
我正在考虑学习Powershell.在我开始之前,有人可以告诉我Powershel擅长什么以及它有什么限制?
非常感谢!