Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для YuS_2

Crazy


Contributor


Сообщения: 1235
Благодарности: 518

Профиль | Отправить PM | Цитировать


1.
Цитата 9119:
$name1 = $video_name1 -replace '"', "" -replace ':', " -" -replace '/', "" -replace '\\', "" -replace '&', " and " -replace "‘", "" -replace "<", "" -replace ">", "" -replace "\|", "" -replace '\?', "" -replace '\*', "" -replace '¶', "" -replace '§', "" -replace "!", "" -replace ",", "" -replace "\.", " -" »
- эту строку, лучше сократить до:
Код: Выделить весь код
$name1 = $video_name1 -replace ':|\.', ' -'  -replace '&', ' and ' -replace '"|/|\\|‘|<|>|\||\?|\*|¶|§|!|,'
смысл тот же, но так гораздо приятнее для глаза

2.
Цитата 9119:
D:\путь\имя файла\имя файла.mp4 в моем случае не будет превышать 240 символов. »
Ну, если есть в том полная уверенность, а также факт того, что имя файла будет достаточной длины для обрезки, в наличии, то:
Код: Выделить весь код
$date = Get-Date -Format "ddMMyy"
$tmp1 = "E:\!!Youtube\АРХИВ\!временное\Ролики\!в работе\tmp\1"
$video_name1 = (Get-Content -encoding utf8 -Path "$tmp1\выкладка.txt")[0]
$name1 = $video_name1 -replace ':|\.', ' -'  -replace '&', " and " -replace '"|/|\\|‘|<|>|\||\?|\*|¶|§|!|,'
$dir1 = "E:\!!Youtube\АРХИВ\!временное\Ролики\$date-$name1\кс\"

$length = 240
$name = [string]$name1
$ext = '.mp4'
[string]$file = $dir1 + $name + $ext
if ($file.length -gt $length) {
	$diff = $file.length - $length
	if (($var = $name.length - $diff) -gt 0){
		$file = $dir1 + $name.remove($var) + $ext
	} elseif (($length - ($dir1+$ext).length) -le 0) {
		write-error "Длина пути $dir1 слишком большая"
	} else {
		write-error 'Имя файла слишком короткое'
	}
}
$file

-------
scio me nihil scire. Ѫ


Последний раз редактировалось YuS_2, 26-06-2021 в 12:18.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:04, 26-06-2021 | #13