Articles of shell

计算系统日志中有多less错误?

我想要统计远程服务器的系统事件日志有多less个错误有没有一种方法使用Powershell或类似的东西来计算发生了多less错误,然后将其保存在文件中?

Howe通过PowerShell编辑文件的第一行或第二行?

现在我使用get-content获取文件的内容,我需要编辑一些行。 例如,更改第二行: 之前: line2: hello Everyone! 后: line2: Hello Mr. Brown! 我可以使用哪个cmdlet?

为了debugging目的而放弃使用cron环境?

Cron脚本是在“有限”的环境中执行的,PATH和CO是非常克制的。 我怎样才能从交互式shell模拟这个env设置,以便我可以debugging脚本,从用户shell错误失败的cron shell

为shell和程序分别redirectSTDERR

我正在做一些审计自动化,这个例子描述了检查Java的版本,即使其他程序做同样的事情。 “java -version”的输出到STDERR,这很容易redirect,但我想发送shell错误(例如,当缺lessjava二进制文件时)到/ dev / null。 看起来shellredirect是一个无所谓的命题。 我迄今为止最有希望的尝试是: { /bin/ksh "{java -version 2>&1;}"; } 2>/dev/null …它将-version命令的输出正确地发送到STDOUT,但是如果java不在那里,它也会向STDOUT发送shell“not found”错误。 我不想看到这个消息。 与以下行为相同: { /bin/ksh "{java -version 2>&1;}" 2>/dev/null; } 有谁知道一种方法来限制redirect的范围,所以每个进程得到它自己的? 我并不限于ksh,但是出于环境原因,它必须是基于shell的shell。

Powershell错误恢复

首先是一个自白,我还是很有绿色的PowerShell。 无论如何,我有一个powershell脚本,非常类似于PowerShell脚本来循环组中的所有用户 它一直在正常工作(脚本寻找组的成员,并设置一个AD属性等,它已经运行良好的一段时间,约2500用户处理,但最近失败)格式默认值:以下exception发生时检索成员“PSComputerName”:“未知错误(0x80005000)” 有一个用户导致错误。 我的问题是如何获得PowerShell的陷阱这个错误\忽略它,并继续工作? 谢谢

recursion删除Windows中某些文件以外的目录

在Windows中,我需要recursion删除除了要保留的文件的短列表之外的目录。 这些文件可能嵌套在子目录中。 我试图在运行“rmdir / s”之前将文件设置为只读,但不起作用。 只读文件不能直接删除,但是在用“rmdir / s”删除的子目录内删除。 任何其他的想法?

在linux中列出具有上次访问date的文件

我想清理一个服务器,让我的网站pipe理员变成一团糟。 我知道如何使用find和-atime来列出最近x天内没有访问的所有文件,但是我正在寻找的是在/foo目录下一级文件的最后访问date列表: /foo/bar1.txt Dec 11, 2001 /foo/bar2.txt Nov 12, 2008 /foo/bar3.txt Jan 12, 2004 对于目录/foo下一级文件夹,列出目录中最近访问的文件的date(对于识别上次访问date没有深度限制) /foo/bar1/ Feb 13, 2012 /foo/bar2/ Oct 11, 2008 其中/foo/bar1/具有1998年1月1日和2012年2月13日修改的文件,而/foo/bar2/有30个文件,其中最近一次访问是2008年10月11日。 这个问题类似于: https : //stackoverflow.com/questions/5566310/how-to-recursively-find-and-list-the-latest-modified-files-in-a-directory-with-s ,而不是修改date,感兴趣的date是最后访问的date。

rsync不删除文件夹

我有一个问题rsyncing我的文件夹。 在我家有一个名为“工作区”的文件夹。 最近我改变了很多内容,创build了新的目录,删除了旧目录。 新的文件夹已成功地rsynced到外部磁盘,但删除的文件夹仍然在外部磁盘,不会被删除。 如果我rsync到我的另一个备份networking位置相同。 在试图调查我尝试这两个命令的原因时: rsync -nav –delete –exclude='.gvfs' –exclude='.cache' –exclude='.thumbnails' /home/OURDOMAIN/myname/workspace /run/media/myname/VERBATIM/backup/myname > dryrun.txt 在这个干运行之后,dryrun.txt文件包含了工作空间文件夹中删除标记为“删除”的所有文件和文件夹,没关系。 但我想运行我的rsync命令整个主目录,但它不工作。 用命令: rsync -nav –delete –exclude='.gvfs' –exclude='.cache' –exclude='.thumbnails' /home/OURDOMAIN/myname /run/media/myname/VERBATIM/backup > dryrun2.txt 现在,标有“删除”的dryrun2.txt行仅适用于.local和.config中最近删除的文件。 没有工作区目录。 为什么它不像我所期望的那样工作? 新的文件夹被复制,但被删除的文件夹不被删除。 你可以看到我没有使用文件掩码。 我认为问题不在我排除dirs。 正如干运行所示,这也不是一个权限问题。 感谢帮助。 rsync版本3.0.9协议版本30 附加说明:如果我创build一些非空目录,并执行rsync,它们被成功复制。 当我删除这些文件夹并执行rsync时,只有当文件夹直接位于/ home / OURDOMAIN / myname(如/ home / OURDOMAIN / myname / deleteme)时,它们才会在备份中消失。 但是像/ home / […]

我怎样才能合并两个相同的PowerShell命令的输出?

我正在监视每个CAS服务器的连接计数,并希望将每个服务器的输出连接起来,以便我可以干净地显示它。 我已经尝试了“添加”结果,如$ rpc = $ rpc + XXXCommandHereXXX和pipe道,如下所示,但我无法“join”命令。 $rpc = (get-counter -ComputerName NYCEXCAS01 -Counter "RPC/HTTP Proxy\Current Number of Incoming RPC over HTTP Connections").countersamples | Select-Object Path, CookedValue $rpc | (get-counter -ComputerName NYCEXCAS02 -Counter "RPC/HTTP Proxy\Current Number of Incoming RPC over HTTP Connections").countersamples | Select-Object Path, CookedValue 我想做一些逻辑上不合理的事吗?

Powershell V1 v V3 – popup窗口消失了

当我做了$name = Read-Host 'What is your name?' 在Powershell V1中,它会在popup窗口中提出问题。 使用Powershell V3,它只是在控制台窗口中询问。 有没有办法强制Read-Host问题仍然popup?