powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите с задачей
15 сообщений из 15, страница 1 из 1
Помогите с задачей
    #39905876
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Необходимо найти в указаном каталоге подкаталоги где нет определенного подкаталога и вывести полный путь к этому подкаталогу
т.е.

если не нашел 222
то вывести полный путь подкаталогу "подкаталог1-1"
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905877
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,
А в чем проблема - рекурсию нельзя использовать?
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905879
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала, было бы неплохо определить инструмент реализации.
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905880
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с инструментом проблем нет можно на сишарпе, на повершеле
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905881
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
cls
#get-childitem C:\TEST -Recurse -Name

$path_ = "F:\225016-SR327520"
$catalog = "\TechReq"
$array1 = @()
$array2 = @()

$full_paths = [System.IO.Directory]::GetDirectories($path_, '*.*',[System.IO.SearchOption]::AllDirectories)
foreach ($sel_path in $full_paths)

{  
  
  
 $d = $sel_path.Contains($catalog)
 
 if($d -ne $false) 
 {
 $test = $sel_path + $catalog
 $t = Test-Path $test
 if($test -ne $false){
 $sel_path
 }
  }
 #else {$array2 += $chek }
}



но такой код работает нет так как надо, кому интересно проверить у себя
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905882
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на поврешеле код выше
...
Рейтинг: 0 / 0
Помогите с задачей
    #39905975
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сложно представить себе. Какое собеседование может потребовать уметь программировать на PowerShell
именно в такой постановке?

Программистам это не надо. У них есть языки и достаточно гибкие.

Сисадмин-девопс? Ну не знаю. Постановка - просто не ихняя. Явно прикладная.
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906002
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014
если не нашел 222 то вывести полный путь подкаталогу "подкаталог1-1"

Я не въезжаю - как это соотносится с картинкой, на которой подкаталог "222" в подкаталоге "подкаталог1-1", сцуко, есть...
Также непонятно, надо ли выводить "подкаталог1" - в нём тоже подкаталога "222", если верить картинке, нет...
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906795
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina
SAS2014
если не нашел 222 то вывести полный путь подкаталогу "подкаталог1-1"

Я не въезжаю - как это соотносится с картинкой, на которой подкаталог "222" в подкаталоге "подкаталог1-1", сцуко, есть...
Также непонятно, надо ли выводить "подкаталог1" - в нём тоже подкаталога "222", если верить картинке, нет...


нужно вывести каталог - подкаталог2 - подкаталог1-2
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906827
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему НЕ надо выводить "каталог" и "каталог - подкаталог"?

Почему НЕ надо выводить "каталог - подкаталог1"?

"3333" - это подкаталог или файл? если подкаталог - почему НЕ надо выводить "каталог - подкаталог2 - подкаталог1-2 - 3333"?
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906839
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача такая нужно найти все подкаталоги где НЕТ указанной папки
И вывести результат в виде полного пути к подкаталогу

А там где есть указанная папка такой - игнорировать
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906847
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014
Задача такая нужно найти все подкаталоги где НЕТ указанной папки
На любом уровне вложенности?

И всё же ответьте на вопросы:
1) "3333" - это подкаталог или файл? если подкаталог - почему НЕ надо выводить "каталог - подкаталог2 - подкаталог1-2 - 3333" ?
2) почему НЕ надо выводить "каталог - подкаталог2 ?
...
Рейтинг: 0 / 0
Помогите с задачей
    #39906850
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычный подход.

Опрашиваем всё дерево каталогов от корня к листьям. Собираем в массив/коллекцию полные пути, с сохранением обратных ссылок. Если встречаем заданный каталог "222", считаем его листом (не обходим ниже) и помечаем как невалидный.
Затем обрабатываем полученное дерево обратно от невалидных листьев по имеющимся ссылкам, от листьев к корню, и для каждого невалидного листа помечаем его родителя как невалидный.
По завершении - выводим записи, которые не помечены как невалидные.
...
Рейтинг: 0 / 0
Помогите с задачей
    #39907335
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina
SAS2014
Задача такая нужно найти все подкаталоги где НЕТ указанной папки
На любом уровне вложенности?

И всё же ответьте на вопросы:
1) "3333" - это подкаталог или файл? если подкаталог - почему НЕ надо выводить "каталог - подкаталог2 - подкаталог1-2 - 3333" ?
2) почему НЕ надо выводить "каталог - подкаталог2 ?


1. подкаталог
2. надо вывести если например в не найден был 222
...
Рейтинг: 0 / 0
Помогите с задачей
    #39907337
Фотография volodin661
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: powershell
1.
2.
$list = gci Test/* -dir -recurse | select fullname
$list.where{  YOURSUBDIR -notin ($_ -split [IO.Path]::DirectorySeparatorChar) }
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите с задачей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]