super-tinypng 好像对当前文件夹下子文件夹内的图片无法压缩,这个是为什么
时间: 2023-06-13 08:07:14 浏览: 155
可能是因为 `super-tinypng` 只会对当前文件夹下的图片进行压缩,而不会递归地遍历子文件夹。你可以使用以下命令来递归地压缩当前文件夹下所有子文件夹内的图片:
```
find . -iname "*.png" -o -iname "*.jpg" -o -iname "*.jpeg" | xargs -n 1 super-tinypng
```
这个命令会找到当前文件夹下所有后缀名为 `.png`、`.jpg` 和 `.jpeg` 的图片文件,并逐个调用 `super-tinypng` 进行压缩。
相关问题
Get-ChildItem -Path "C:\path\to\folder" -Recurse -Include *.png, *.jpg, *.jpeg | ForEach-Object { super-tinypng $_.FullName } 我要 对D:\0tools\bestPress\picture文件夹中所有的图片进行压缩,使用上面的命令,要怎么修改,请给出详细的步骤
你可以将命令修改为以下形式:
```powershell
Get-ChildItem -Path "D:\0tools\bestPress\picture" -Recurse -Include *.png,*.jpg,*.jpeg | ForEach-Object { super-tinypng $_.FullName }
```
这样就可以对 `D:\0tools\bestPress\picture` 文件夹中的所有 `.png`、`.jpg` 和 `.jpeg` 图片进行压缩了。
如果你还没有安装 `super-tinypng` 模块,你需要先安装它。可以在 PowerShell 控制台中输入以下命令来安装:
```powershell
Install-Module -Name super-tinypng -Scope CurrentUser
```
安装完成后,你就可以使用上面的命令来压缩图片了。
Install-Module -Name super-tinypng 运行报错PackageManagement\Install-Package : 找不到与指定的搜索条件和程序包名称“super-tinypng”匹配的项目。请尝试使用 Get-PSRep ository 查看所有可用的注册程序包源。,要怎么解决,给出详细步骤
这个错误提示说明 PowerShell Gallery 中没有名为 super-tinypng 的模块。你可以尝试以下步骤来解决这个问题:
1. 确认已经正确安装了 PowerShellGet 模块。可以在 PowerShell 中运行以下命令来检查 PowerShellGet 的版本:
```powershell
Get-Module -Name PowerShellGet -ListAvailable | Select-Object Name,Version
```
2. 确认你的计算机可以连接到 PowerShell Gallery。可以在 PowerShell 中运行以下命令来测试连接:
```powershell
Test-NetConnection -ComputerName www.powershellgallery.com -Port 443
```
如果连接不成功,可能是防火墙或网络代理的原因,需要进行相应的配置。
3. 尝试更新 PowerShell Gallery 的索引。可以在 PowerShell 中运行以下命令:
```powershell
Update-Module -Name PowerShellGet
```
4. 确认你的搜索条件和程序包名称是否正确。可以在 PowerShell 中运行以下命令来搜索模块:
```powershell
Find-Module -Name super-tinypng
```
如果搜索结果为空,说明该模块可能不存在。你可以尝试搜索其他名称相似的模块。
如果以上步骤都无法解决问题,你可以考虑手动下载并安装该模块。具体步骤如下:
1. 在 PowerShell Gallery 中搜索要下载的模块。可以在 PowerShell Gallery 网站中搜索,或者在 PowerShell 中运行以下命令:
```powershell
Find-Module -Name super-tinypng
```
2. 找到适合你的 PowerShell 版本和操作系统的模块版本,并记录模块的名称、版本号和下载链接。
3. 在 PowerShell 中运行以下命令来下载模块:
```powershell
$url = 'https://www.powershellgallery.com/api/v2/package/super-tinypng/1.0.0'
Invoke-WebRequest -Uri $url -OutFile 'C:\Temp\super-tinypng.1.0.0.nupkg'
```
上面的命令将模块下载到 C:\Temp 目录中。
4. 解压缩下载的模块。可以使用任何支持解压缩 NuGet 包的工具,如 7-Zip。将解压缩后的模块文件夹复制到 PowerShell 模块路径中。可以在 PowerShell 中运行以下命令来查找 PowerShell 模块路径:
```powershell
$env:PSModulePath -split ';'
```
将模块文件夹复制到其中任何一个路径下即可。例如:
```powershell
Copy-Item -Path 'C:\Temp\super-tinypng.1.0.0\super-tinypng' -Destination 'C:\Program Files\WindowsPowerShell\Modules\'
```
5. 现在你应该可以在 PowerShell 中使用该模块了。可以尝试运行以下命令来验证:
```powershell
Import-Module -Name super-tinypng
```
希望这些步骤可以帮助你解决问题。
阅读全文