cd %windir%\system32\inetsrv
@echo off
for /F "tokens=* USEBACKQ" %%x in (
`appcmd list apppool /text:name`
) do (
echo|set /p= "%%x - " /text:name & appcmd.exe list apppool "%%x" /text:processModel.identityType
)
echo %date% & echo %time%
pause
без использования LINQ
DateTime lastHigh = new DateTime(1900,1,1);
string highDir;
foreach (string subdir in Directory.GetDirectories(path)){
DirectoryInfo fi1 = new DirectoryInfo(subdir);
DateTime created = fi1.LastWriteTime;
if (created > lastHigh){
highDir = subdir;
lastHigh = created;
}
}
Если вы создаете службу Windows и хотите получать уведомления о создании нового файла или каталога, вы также можете использовать FileSystemWatcher . По общему признанию не так легко, но интересно играть. :)
Вы можете использовать Directory. GetLastWriteTime (или Directory.GetLastWriteTimeUtc
, это не имеет значения в данном случае, когда вы просто делаете относительные сравнения).
Хотя вы просто хотите посмотреть на "измененное" время, как сообщает ОС, или вы хотите найти каталог с последним измененным файлом внутри? Они не всегда совпадают (то есть, ОС не всегда обновляет время "последнего изменения" содержащегося каталога, когда изменяет файл).
Нерекурсивный:
new DirectoryInfo(path).GetDirectories()
.OrderByDescending(d=>d.LastWriteTimeUtc).First();
Рекурсивный:
new DirectoryInfo(path).GetDirectories("*",
SearchOption.AllDirectories).OrderByDescending(d=>d.LastWriteTimeUtc).First();