【发布时间】:2019-10-11 20:56:50
【问题描述】:
我有以下 Unix shell 脚本。我想将其转换为 Windows .bat 文件(我知道我可以使用 Cygwin 而不是将其适应 Windows 环境。但 Cygwin 不适合我)。
我知道我可以在线使用 Windows PowerShell 阅读材料。但我不想花几个小时在线学习基础知识来满足这一一次性要求。请不要因为我懒惰而抨击我。我相信这对其他人也会有所帮助,因为它可以作为将来在线搜索的人的快速指南。
这是脚本:
#!/bin/bash
echo ""
cat $1 | grep -A4 "Device_name"; echo ""
cat $1 | grep -A45 "Device_Oops"; echo ""
cat $1 | grep -A150 "Processes:" | sed '/Radar/q'; echo ""
cat $1 | grep -E '[0-9][0-9]:[0-9][0-9]:[0-9][0-9]' | grep -i -E 'error|restart'
要回答有关我尝试过的问题,我在运行“find”命令时遇到了问题,该命令相当于本网站grep 中的grephttp://tldp.org/LDP/abs/html/dosbatch.html
这是我的Joy.txt 文件(接下来的两行):
Device_name router@home
testing only
然后在 PowerShell 提示符下我运行了以下命令:
cat Joy.txt | find "Device_name"
我期待看到上述文件的第一行。但相反,我得到参数格式不正确的错误。有人可以帮忙吗?
【问题讨论】:
-
你有没有尝试过?结果如何?
-
Windows批处理文件和Powershell不一样。批处理文件已经存在了 20 多年,我认为学习它来完成上述操作可能需要一两个小时
-
你不应该在这里发帖,因为你想教育别人。向我们展示您迄今为止所做的工作,我们会为您提供帮助。
标签: powershell batch-file