Чтобы заставить sort
отсортировать второй столбец, вы должны использовать команду вроде:
grep "needle" /path/to/logs/* | sort -k2
Чтобы использовать для сортировки только второй столбец, вы должны использовать его следующим образом: [114 ]
grep "needle" /path/to/logs/* | sort -k2,2
Я использовал следующий код, предоставленный Scott Guthrie в его блоге в течение достаточно долгого времени:
public class ViewManager
{
public static string RenderView(string path, object data)
{
Page pageHolder = new Page();
UserControl viewControl = (UserControl) pageHolder.LoadControl(path);
if (data != null)
{
Type viewControlType = viewControl.GetType();
FieldInfo field = viewControlType.GetField("Data");
if (field != null)
{
field.SetValue(viewControl, data);
}
else
{
throw new Exception("ViewFile: " + path + "has no data property");
}
}
pageHolder.Controls.Add(viewControl);
StringWriter result = new StringWriter();
HttpContext.Current.Server.Execute(pageHolder, result, false);
return result.ToString();
}
}
object data
параметр, включает динамическую загрузку данных в пользовательский элемент управления и может использоваться для введения больше чем одной переменной в управление через массив или что-то подобное.
Этот код запустит все нормальные события в управление.
Можно читать больше об этом здесь
Отношения Jesper Hauge
Необходимо было бы присоединить управление к Странице путем добавления его к набору Средств управления Страницы или Управления на странице. Это не решит все Ваши проблемы, если Вы не сделаете что-то для явного отключения рендеринга во время нормального события рендеринга страницы.
Я взял метод Хауге / Скотта Гатри, описанный выше, и настроил его так, чтобы вам не нужно было использовать отражение или изменять UserControl для реализации какого-либо специального интерфейса. Ключ в том, что я добавил строго типизированный обратный вызов, который метод RenderView выше вызывает вместо отражения.
Я написал в блоге вспомогательный метод и его использование здесь
HTH, Джон