Имя: Пароль:
LIFE
Админ
OFF: Команда DIR сырая, использовать DOS пока нельзя
0 Базис
 
naïve
12.02.21
15:24
Кончается место на диске. Нашёл большую папку, старый Гарант, 30 ГБ.
На всякий случай в FAR MANAGER сохраняю список файлов командой dir >>fileslist.txt
fileslist.txt не создаю.
После 1 запуска команды вижу в этом файле его имя:

Том в устройстве C не имеет метки.
Серийный номер тома: ****-****

Содержимое папки C:\Большие Файлы Сергея\Garant\data2

12.02.2021  15:14    <DIR>          .
12.02.2021  15:14    <DIR>          ..
06.06.2011  09:27        14 681 064 data.0ey
06.06.2011  09:38       433 811 530 data.1ey
06.06.2011  09:38             4 104 data.2ey
06.06.2011  09:38        91 493 304 data.3ey
06.06.2011  09:38        37 737 209 data.4tr
06.06.2011  09:38        45 404 531 data.5ey
06.06.2011  09:33     2 147 479 552 data.6t0
06.06.2011  09:34     2 147 479 552 data.6t1
06.06.2011  09:35     2 147 479 552 data.6t2
06.06.2011  09:36     2 147 479 552 data.6t3
06.06.2011  09:37     2 147 479 552 data.6t4
06.06.2011  09:38     1 115 914 240 data.6t5
06.06.2011  09:31     2 147 476 744 data.6tr
06.06.2011  09:38             8 200 data.7tr
06.06.2011  09:30     1 169 125 376 data.8t0
06.06.2011  09:30     2 147 476 981 data.8tr
06.06.2011  09:27        58 864 395 data.9tr
06.06.2011  09:48       127 734 385 data.key
06.06.2011  09:42     2 147 483 136 data.nd0
06.06.2011  09:43     2 147 483 136 data.nd1
06.06.2011  09:45     2 147 483 136 data.nd2
06.06.2011  09:46     2 147 483 136 data.nd3
06.06.2011  09:47     2 147 483 136 data.nd4
06.06.2011  09:48       655 071 232 data.nd5
06.06.2011  09:48     2 147 483 136 data.ndt
06.06.2011  10:22               575 data.ORG
06.06.2011  09:40     2 147 479 552 data.st0
06.06.2011  09:40       387 276 800 data.st1
06.06.2011  09:48     2 147 476 931 data.str
12.02.2021  15:14                 0 fileslist.txt
              30 файлов ** *** *** *** байт
               2 папок   * *** *** *** байт свободно

Почему файл попал в выборку? Кто так пишет? Эта команда в Windows идёт с DOS, значит оба семейства ОС ещё сырые и не должны использоваться? На Линуксе, наверное, правильно?
1 ДенисЧ
 
12.02.21
15:27
В пингвинуксе правильно, потому что там нет команды dir
2 DGorgoN
 
12.02.21
15:40
Не правильно это когда в описании команды явно сказано 1 а при её выполнении явно происходит в другое. А в (0) это особенности выполнения.
3 mistеr
 
12.02.21
15:44
(0) Что не так-то?
4 Многолетний Апельсин
 
12.02.21
15:45
(0) думаю там внутри код из разряда что-то типа:

ВывестиМеткуИСерийномерДиска(); // Здесь в момент вывода текста перенаправление создает filelist.txt
ВывестиСписокФайловКаталога(); // Сканирование папки происходит внутри этой процедуры и подхватывает filelist.txt
5 mistеr
 
12.02.21
15:45
(0) ">>" это конвейер (pipeline). Ты в курсе, что это и как работает?
6 mistеr
 
12.02.21
15:46
У ТС понимание ОС сырое, пользоваться пока не стоит.
7 Garykom
 
гуру
12.02.21
15:47
(0) многопоточность
старая dos была однопоточной, а тут у тебя dir начал считывать имена файлов и записывать в fileslist.txt, т.е. он создался
а чтение имен файлов все продолжается и тут дошли до самого себя, пока с размером 0 ибо не закрыта запись
8 Garykom
 
гуру
12.02.21
15:48
и да это классический косяк программера с бесконечным циклом
что те мешало fileslist.txt в другой каталог/диск?
9 Asmody
 
12.02.21
15:50
(0) потому что ты перенаправил вывод. чтобы команда могла куда-то писать, ОС должно это "что-то" ей дать. По-умолчанию, это stdout. Перенаправление вывода меняет это поведение. ОС (точнее, оболочка) создала файл, отрыла на запись и отдала в качестве stdout команде dir. Пока команда не завершила вывод, файл на запись не закрывается, и для чтения он заблокирован. Поэтому, размер 0.
10 Garykom
 
гуру
12.02.21
15:52
(9) даже стало интересно, в виртуалку что ли dos 6.22 поставить и провести эксперимент
а не в этой эмуляции dos консоли на винде
11 Базис
 
naïve
12.02.21
15:53
(9) Размер 0 - согласен. Но в момент выполнения команды файла ещё не было.
12 Fish
 
12.02.21
15:58
(11) " Но в момент выполнения команды файла ещё не было." - Ошибочное утверждение.
13 mistеr
 
12.02.21
16:00
(11) Появился в процессе.

Это тебе не скуль тут кислотой (ACID) не пахнет.
14 Волшебник
 
12.02.21
16:03
(9) Гениально
15 Asmody
 
12.02.21
16:43
"Системное программирование на C", второй курс университета.
16 Kigo_Kigo
 
12.02.21
16:47
Собственно вопрос то в другом, нахрена это было нужно?
17 Базис
 
naïve
12.02.21
16:58
(15) Серьёзный университет, не-архаичные преподы, завидую. Где такое?
(16) Нужно было для оставления следа, комп отдали полностью заполненный, но прошлого хозяина уже не спросить. Ковид :(
И поведение ОС удивило. Ожидал, что всё будет сделано в единой транзакции.
18 Asmody
 
12.02.21
16:59
(17) Приходи в СГУ в 93м году, все будет
19 Asmody
 
12.02.21
17:02
"И поведение ОС удивило" - вообще-то, это поведение описано в POSIX. А Windows NT старается ему соответствовать.
20 Доктор Манхэттен
 
12.02.21
17:09
(0) >> fileslist.txt не создаю.

Лжешь.
Ты создаешь этот файл командой dir >>fileslist.txt
21 Arbuz
 
12.02.21
17:13
dir | tee filelist.txt
;)
22 Базис
 
naïve
12.02.21
17:16
(18) Это тот, где человечки с эллиптическими головами во всей учебной документации? Знакомые выпускники юрфака - совершенные деревья, про ИТ направление у них не слышал.
23 rphosts
 
12.02.21
17:17
(0) интересно как ты отреагируешь когда узнаешь как на самом деле выполняются самые даже простые запросы...
24 rphosts
 
12.02.21
17:20
(19) я помню те времена когда NT была NewTecnologies...  а потом пришли ребята из фирмы DEC и забацали мелкомягким ядро NT 3.0 - первое реально не решето
25 Доктор Манхэттен
 
12.02.21
17:22
(1) там работает точно так же, имя файла попадает в файл
26 VladZ
 
12.02.21
17:22
(0) Пару раз замечал отличие поведения команд ДОС в чистой ДОС и в FAR MANAGER.
Поэтому, я бы проверил в чистой ДОС.
27 rphosts
 
12.02.21
17:24
VladZ, в Мск свалил что-ли?
28 Гость из Мариуполя
 
гуру
12.02.21
17:26
(11) если бы в момент выполнения команды его бы не было, то команда бы просто не смогла выполниться. Физически. Ей бы "некуда" было выполняться.

Для того, чтобы команда могла выполниться "куда-то", ей ПЕРЕД выполнением это самое "куда-то" надо создать.
29 VladZ
 
12.02.21
17:27
(27) Да, уже два года здесь.
30 rphosts
 
12.02.21
17:29
(29) комфортнее по самой жизни чем в Нкз?
31 VladZ
 
12.02.21
17:31
(30) Я не за комфортом ехал. Так сложилось.
Что-то конкретное интересует? Спрашивай.
32 rphosts
 
12.02.21
17:39
(31) значит пока не акклиматизировался...
Обратно не тянет?
33 Garikk
 
12.02.21
17:41
(1) (0) https://pasteboard.co/JO1xqn1.png
тоже самое в линуксе
34 Доктор Манхэттен
 
12.02.21
17:45
(26) Зачем проверять, если поведение логичное и ожидаемое? В чистом ДОС такое же как и в ФАРе, и в Линуксах, и в Виндовс. Команда работает правильно. То что ТСу удобнее другое поведение - это его проблемы. Кому-то наоборот нужно чтобы в файл попали все имена файлов, кому-то не нужно. Под всех не подстроишься.
35 Доктор Манхэттен
 
12.02.21
17:47
(33) Уже писали
36 VladZ
 
12.02.21
17:58
(32) Нет, не тянет.

Зима тут, конечно, не как в Сибири. Обычно это слякоть. Только успеваешь омывайку в машину заливать.
В этом году холоднее, чем в прошлом. Здесь ветра и влажность. Как результат: -13 по ощущениям как -20.
Прикинь, на прошлой неделе колесо заклинило (замерзла какая-то хрень в ручнике). Прикол: в Сибири не замерзало, в МСК замерзло.

Ну, в целом: большой город - больше возможностей. Но и народу больше. Это иногда конкретно напрягает.
37 rphosts
 
12.02.21
18:34
(36) у нас ветров тоже хватает, особенно последние года... а вот слякоть -> мерзость!!! Терпеть не могу грязь!!!
Колесо бывало прихватывало... барабанные тормоза имеют такой риск. И да пробки тоже напрягают прям сильно, пока сам за рулём.
38 Доктор Манхэттен
 
12.02.21
19:17
(36) Мне после Сибири Москва вообще не понравилась. Сам город стремный, грязный, некомфортный. Ну и климат тоже. Слякоть в минусовую погоду - это очень напрягает. И вечная грязь на дорогах, что машина постоянно грязная. Про омывайку ты точно подметил. Стекла загрязняются на раз.
39 Доктор Манхэттен
 
12.02.21
19:18
Больше возможностей - это очень хорошо. Но когда есть возможность работать удаленно, причин оставаться в Москве - ноль.
40 Кирпич
 
12.02.21
21:35
Элитарий. Что тут скажешь.