Articles of PowerShell的

使用Powershell或命令行在Windows中创build压缩/压缩文件夹

我正在创build一个夜间数据库模式文件,并希望将每个晚上创build的所有文件(每个数据库一个文件)放入一个文件夹并压缩该文件夹。 我有一个PowerShell脚本来创build模式。只有数据库的创build脚本,然后将所有文件添加到一个新的文件夹。 问题在于这个过程的压缩部分。 有没有人有任何想法,如果这可以完成与预处理文件夹压缩的Windows实用工具? 如果可能,最好使用该工具,而不是像7zip(我不想在每个客户的服务器上安装7zip,如果我问他们可能需要花费IT时间)。

从Windows cmd中检索文件属性

因为node.js没有提供在窗口上检索和修改文件属性的方法,所以我需要执行一个subprocess。 我想获得所有的文件属性,即: 尺寸 档案 隐 只读 系统 创build/修改/访问时间 文件?/目录?/符号链接? (结) 如果我要执行一个subprocess,我不想调用fs.stat,因为它是一个额外的I / O访问(并且Stats不提供太多的窗口信息)。 如果我执行一个subprocess,我想一次检索所有的数据。 所以,我写了一个PowerShell脚本: var cmd = "powershell -Command \"$item=get-item a -force;[bool]($item.attributes -band [io.fileattributes]::directory);[bool]($item.attributes -band [io.fileattributes]::archive);[bool]($item.attributes -band [io.fileattributes]::reparsepoint);[bool]($item.attributes -band [io.fileattributes]::hidden);[bool]($item.attributes -band [io.fileattributes]::readonly);[bool]($item.attributes -band [io.fileattributes]::system);$item.length;$tmp=$item.creationtime;$tmp.year;$tmp.month;$tmp.day;$tmp.hour;$tmp.minute;$tmp.second;$tmp.millisecond;$tmp=$item.lastaccesstime;$tmp.year;$tmp.month;$tmp.day;$tmp.hour;$tmp.minute;$tmp.second;$tmp.millisecond;$tmp=$item.lastwritetime;$tmp.year;$tmp.month;$tmp.day;$tmp.hour;$tmp.minute;$tmp.second;$tmp.millisecond;$s\""; 这将返回:(一次在javascript: split("\r\n") ) [ 'False', //directory? 'True', //archive? 'False', //symlink? 'False', //hidden 'False', //readonly? 'False', //system? '3', //length (if directory, […]

从本地复制文件复制项目使用凭据删除服务器

我想从本地机器上复制一些文件和文件夹到远程服务器: Copy-Item .\copy_test.txt -destination "\\serverip\c$\backups\" 但我得到一个错误: 复制项目:login失败:未知的用户名或错误的密码。 在线:1 char:10 + Copy-Item <<<<。\ copy_test.txt -destination“\\ serverip \ c $ \ backups \”-verbose + CategoryInfo:NotSpecified:(:) [Copy-Item],IOException + FullyQualifiedErrorId:System.IO.IOException,Microsoft.PowerShell.Commands.CopyItemCommand 我试图使用凭据,但是这个命令不允许-Credential参数。 我search了很多,在每个例子中,只要执行Copy-Item $source -destination $destination ,命令都非常简单,我想知道为什么在我的工作站中这么辛苦。 创build新的PSDrive 我试图创build一个New-PSDrive但没有奏效。 $creds = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $username, $password New-PSDrive -Name X -PSProvider FileSystem -Root '\\$serverip\c$' -Credential $creds -Persist Copy-Item '.\copy_test.txt' -Destination […]

自动访问DB5到MySQL

我有一个问题,希望我可以依靠这里的一些经验来寻求build议,并推动正确的方向。 我有一个由专有软件制作的MS Access文件。 我只想从这个表中取出一半的列,然后导入到新的(尚未安装的)mysql数据库中。 我不知道该怎么做,或者最好的方法是什么。 新的数据将获得每晚,并再次导入,作为一项自动任务。 访问数据库中的一个列是一个URL到一个JPEG文件,我想要下载这个文件并自动导入到BLOBtypes的数据库中。 有没有办法自动做到这一点? 这将在Windows机器上,所以也许它可以与WSH脚本?

我可以在Emacs的shell模式下使用PowerShell吗?

我可以使用powershell作为shell,在shell模式下使用emacs吗? 怎么样?

Powershell – 如何保持跨会话加载导入的模块

我有一堆使用一个普通的PowerShell库(混合自定义PS函数和C#类)的不同脚本。 脚本会定期自动执行。 当每个脚本加载时,它使用相当多的CPU导入自定义模块。 当所有的脚本立即启动服务器的CPU运行在100%…有没有办法导入模块只有一次? 在这种情况下,所有脚本都由Windows服务执行。

编译器在Wine下输出错误,但不在Windows上输出

我有.mqh源代码文件,带有语法错误,例如由以下命令创build: echo some_error > fail.mqh 现在,我正在使用Metaeditor编译器来检查语法,我的目标是将错误打印到标准输出( CON ),而不是将它们logging到文件( /log:file.log )中。 请参阅: 编译 。 下面的语法在Linux / macOS上可以正常工作(也在wine cmd.exe ): $ wine metaeditor.exe /s /log:CON /compile:fail.mqh ??fail.mqh : information: Checking 'fail.mqh' fail.mqh(1,1) : error 116: 'some_error' – declaration without type fail.mqh(1,1) : error 161: 'some_error' – unexpected end of program : information: Result 2 error(s), 0 warning(s) […]

无法在PowerShell上导入MSOnline(Connect-MsolService错误)

我有这个问题,无法find任何答案。 问题是我试图使用Azure cdmlets通过c#代码连接到O365,但是我无法获得connect-msolservice 。 “尝试在Office 365中运行pipe理Windows PowerShell cmdlet”时出现“无法识别该术语”错误“

PowerShell 2.0redirect文件句柄exception

我正在寻找一个解决schemeThe OS handle's position is not what FileStream expected. Do not use a handle simultaneously in one FileStream and in Win32 code or another FileStream. The OS handle's position is not what FileStream expected. Do not use a handle simultaneously in one FileStream and in Win32 code or another FileStream. 这个exception也可以用在包含“修复”的脚本中调用的脚本上。 为了这个问题的目的,说我有两个脚本: foo.ps1 # <fix> […]

PowerShell鼠标移动不会阻止空闲模式

在我开始之前,这里是我在PowerShell中编写的第一个小代码:) [System.Windows.Forms.Cursor]::Position = ` New-Object System.Drawing.Point($pos.X, ($pos.Y – 1)) [System.Windows.Forms.Cursor]::Position = ` New-Object System.Drawing.Point($pos.X, $pos.Y) 我想达到什么目的? 那么,我想每4分钟移动鼠标光标,以防止出现屏幕保护程序(上面的代码中的每一秒进行testing)。 该代码确实每移动一个像素,然后立即下降鼠标。 事情是,屏幕保护程序(或窗口的空闲模式)仍然出现。 现在,我正在学习PowerShell,而我对Windows体系结构几乎没有经验。 有人看到我的错误吗? 我会很感激一个答案! :D在此先感谢。