1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/chuanjiao10-kasini3000

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
zd只读nodelist文件.ps1 4.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
chuanjiao10 Отправлено 11.09.2024 07:00 d720b3d
#建议保存编码为:bom头 + utf8
$script:nodelist文件最后写入时间2 = (Get-ChildItem -LiteralPath "${global:kasini3000_data_path}\nodelist.csv").LastWriteTimeUtc
if ($script:nodelist文件最后写入时间2 -gt $global:nodelist文件最后写入时间 )
{
$global:zd只读nodelist文件 = $false
}
# 双变量 决定是否导入nodelist。
if ($global:zd只读nodelist文件 -eq $true)
{
exit
}
$global:zd只读nodelist文件 = $true
$global:nodelist文件最后写入时间 = $script:nodelist文件最后写入时间2
if ($global:启用excelnodelist -eq $true)
{
if (Test-Path -LiteralPath "${PSScriptRoot}/zd只读nodelist文件excel.ps1")
{
$global:zd只读nodelist文件 = $false
& "${PSScriptRoot}/zd只读nodelist文件excel.ps1"
exit
}
}
if ($global:启用_win密码加密版_nodelist -eq $true)
{
if (Test-Path -LiteralPath "${PSScriptRoot}/zd只读win密码加密版_nodelist.ps1")
{
$global:zd只读nodelist文件 = $false
& "${PSScriptRoot}/zd只读win密码加密版_nodelist.ps1"
exit
}
}
if ( ($IsWindows -eq $True) -or ($PSVersionTable.psversion.major -lt 6) ) #win
{
& 'c:\ProgramData\kasini3000\0k_source.ps1'
if (Test-Path -LiteralPath $global:被控机列表文件)
{
}
else
{
Write-Error "错误,找不到被控机列表文件 $global:被控机列表文件 。`n请按照示例文件 ‘c:\ProgramData\kasini3000\docs\examples\nodelist.csv’ `n请按照示例文件 ‘c:\ProgramData\kasini3000\docs\examples\nodelist.xlsx’ `n生成被控机列表文件‘~\Documents\kasini3000\nodelist.csv’"
if ($global:kasini3000_data_path)
{
}
else
{
$global:kasini3000_data_path = "${env:USERPROFILE}\Documents\kasini3000"
}
if (Test-Path -LiteralPath $global:kasini3000_data_path)
{
}
else
{
mkdir $global:kasini3000_data_path
}
Copy-Item -LiteralPath 'c:\ProgramData\kasini3000\docs\examples\nodelist.csv' -Destination "${global:kasini3000_data_path}"
Start-Sleep -Seconds 1
& C:\windows\system32\notepad.exe "${global:kasini3000_data_path}\nodelist.csv"
$global:zd只读nodelist文件 = $false
exit 1
}
}
if ($IsLinux -eq $True)
{
& '/etc/kasini3000/0k_source.ps1'
if (Test-Path -LiteralPath $global:被控机列表文件)
{
}
else
{
Write-Error "错误,找不到被控机列表文件 $global:被控机列表文件 。`n请按照示例文件 ‘/etc/kasini3000/docs/examples/nodelist.csv’ `n请按照示例文件 ‘/etc/kasini3000/docs/examples/nodelist.xlsx’ `n生成被控机列表文件‘/root/kasini3000/nodelist.csv’"
if ($global:kasini3000_data_path)
{
}
else
{
$global:kasini3000_data_path = "/root/kasini3000"
}
if (Test-Path -LiteralPath $global:kasini3000_data_path)
{
}
else
{
mkdir $global:kasini3000_data_path
}
Copy-Item -LiteralPath '/etc/kasini3000/docs/examples/nodelist.csv' -Destination "${global:kasini3000_data_path}"
Write-Host -ForegroundColor Green ' vi /root/kasini3000/nodelist.csv'
$global:zd只读nodelist文件 = $false
exit 1
}
}
function bom头吗 ($输入文件全路径2)
{
if ( ($IsLinux -eq $True) -or ($PSVersionTable.psversion.major -ge 6) )
{
$头 = Get-Content -LiteralPath $输入文件全路径2 -AsByteStream -TotalCount 4
}
else
{
$头 = Get-Content -LiteralPath $输入文件全路径2 -Encoding Byte -TotalCount 4
}
[string]$utf8_BOM = "{0:X}{1:X}{2:X}" -f $头
[string]$utf16_BOM = "{0:X}{1:X}" -f $头
[string]$utf32_BOM = "{0:X}{1:X}{2:X}{3:X}" -f $头
if ($utf8_BOM -eq "EFBBBF")
{
$script:输入文件编码2 = 65001
$script:输出文件编码2 = 65001
Write-Verbose "nodelist文件编码为:UTF-8"
return $true
}
if ($utf16_BOM -eq "FFFE")
{
$script:输入文件编码2 = 1200
$script:输出文件编码2 = 1200
Write-Verbose "nodelist文件编码为:Unicode"
return $true
}
if ($utf16_BOM -eq "FEFF")
{
$script:输入文件编码2 = 1201
$script:输出文件编码2 = 1201
Write-Verbose "nodelist文件编码为:Big Endian Unicode"
return $true
}
if ($utf32_BOM -eq "0000FEFF")
{
$script:输入文件编码2 = 12001
$script:输出文件编码2 = 12001
Write-Verbose "nodelist文件编码为:UTF-32, big-endian"
return $true
}
if ($utf32_BOM -eq "FFFE0000")
{
$script:输入文件编码2 = 12000
$script:输出文件编码2 = 12000
Write-Verbose "nodelist文件编码为:UTF-32, little-endian"
return $true
}
return $False
}
if ( bom头吗 -输入文件全路径2 $global:被控机列表文件 )
{
}
else
{
if ($env:LANG -eq 'zh_CN.UTF-8')
{
Write-Error "错误: nodelist.csv 必须有bom头,文件编码格式不限,回车格式不限。返回码2"
}
else
{
Write-Error "Error: nodelist.csv must have a BOM header, unlimited file encoding format, and unlimited carriage return format. Return code 2"
}
$global:zd只读nodelist文件 = $false
exit 2
}
$global:所有被控机 = Import-Csv -LiteralPath $global:被控机列表文件 -ErrorAction Stop
exit 0

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/chuanjiao10-kasini3000.git
git@api.gitlife.ru:oschina-mirror/chuanjiao10-kasini3000.git
oschina-mirror
chuanjiao10-kasini3000
chuanjiao10-kasini3000
master