The UNIX and Linux Forums  


Go Back   В UNIX и Linux Форумы > Топ форумы > UNIX для чайников Вопросы И Ответы
.
Google unix.com



UNIX для чайников Вопросы И Ответы Если вы не уверены в том, где разместить UNIX или Linux вопрос, задайте его здесь. Все UNIX и Linux приветствуем новичков!!

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Сортировка каталога Листинг Сепия UNIX для чайников Вопросы И Ответы 1 07-11-2007 08:44 AM
Как я могу получить список каталогов? haisubbu UNIX для чайников Вопросы И Ответы 2 08-25-2006 10:03 AM
Полный список каталогов ... B14speedfreak UNIX для чайников Вопросы И Ответы 5 05-11-2006 09:06 AM
Времени в список каталогов vijashok UNIX для чайников Вопросы И Ответы 2 10-06-2005 11:03 AM
Рекурсивное каталог список без списка файлов psingh UNIX для чайников Вопросы И Ответы 4 05-10-2002 11:52 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 03-08-2008
grebbux grebbux is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2008
Сообщений: 10
красиво отформатирована каталог из списка партии SSH сессии

Привет,

Я действительно пытаются отделка скрипт я был назначен.
Сценарий цель состоит в том, чтобы войти на каждый сервер, определенных в массиве, определить версию веб-сервера, а также список каталога Под установочную директорию. В моем случае это каталог установки почти всегда "/ отказа / IBMHTTPServer" (иногда "/ отказа / IBMHttpServer")

Вот фрагмент кода.


Код:
for host in ${Hosts}
do
  AssumedDir=$(batch_ssh ${host} "ls -1 /opt")
  if [[ ${AssumedDir} = *IBMHTTPServer*  ]]; then
    ServerInstallDir='/opt/IBMHTTPServer'
  else
    ServerInstallDir='/opt/IBMHttpServer'
  fi

 #DirectoryListing=$(batch_ssh ${host} "find ${ServerInstallDir} -type d -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'")
 #DirectoryListing=$(batch_ssh ${host} "ls -1 $ServerInstallDir")
 DirectoryListing=$(batch_ssh ${host} "ls -1 $ServerInstallDir | while read d; do echo $d ; done")

  ServerVersion=$(batch_ssh ${host} "${ServerInstallDir}/bin/httpd -V | awk 'NR < 2'")

  echo '<br /><h3>'${host}'</h3>' >> $HTMLFILE
  echo '<b>Server Version</b>: ' ${ServerVersion} >> $HTMLFILE
  echo '<br /><b>Directory Structure</b><br /> ' $DirectoryListing >> $HTMLFILE

done

#- Email results
html_mail -t "some.body@company.co.uk" -r "noreply@servername" -s "Apache Security Audit" -a "$HTMLFILE"

(Это SED Команда выше поступать из UNIX форумах часто, я забыл название! Спасибо, хотя - два прокомментировал DirectoryListing ВАР просто опыта)

Итак, после этого сценария делал это дело, он ссылается на Perl Сценарий (html_mail) направить доклад. (Я не сделал этого, и я знаю, она работает хорошо). Почта приходит на основе, как и планировалось, однако в каталоге перечень весьма уродливый, он выглядит так:


Код:
_uninst admindocs bin cgi-bin conf example_module htdocs icons include keys.q.hpicheck.com keys.q.hpicheck.com.20061002_141729 keys.q.racexaminations.co.uk keys.q.racvehiclehealthcheck.co.uk keys.q.vehiclestatusreport.co.uk libexec license logs man readme ssl tivready version.signature

Я хотел бы, прежде файлов / каталогов 'ы должны быть перечислены, как они будут после выдачи `Ls -1` из корпуса.

Спасибо за чтение моего поста, я надеюсь, что кто-то может мне помочь. Если у вас есть какие-либо комментарии о качестве кода, пожалуйста, воздух над ними, поскольку это мое первое (несколько) Полезные сценарий, и я готов за все отклики я могу получить. (Полный вариант этого скрипта Баш pastebin - совместные средства отладки)

Спасибо.
Old 03-08-2008
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Регистрация: август 2001
Место проведения: Ashburn, Вирджиния
Сообщения: 9127
Попробуйте добавить двойные кавычки:
эхо '<br /> <b> Структура каталогов </ B> <br />' "$ DirectoryListing" >> $ HTMLFILE
Old 03-09-2008
grebbux grebbux is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2008
Сообщений: 10
Спасибо за ответ, Perderabo.

Когда я делаю, как вы предлагаете, без выходных возвращается в каталоге структуры листинга.

Я попробовал другие мои два экспериментальных "DirectoryListing" переменных с переменной "двойными кавычками" в эхо заявление, что дает вывод, однако же, уродливые, выход я никак не раньше.

Спасибо,
grebbux.
Old 03-09-2008
grebbux grebbux is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2008
Сообщений: 10
Я думаю, я получаю то, когда я пытаюсь это:


Код:
echo $DirectoryListing | sed 's/ /<br>/' >> $HTMLFILE

Правила посещения: Ничего не перечислены, если я поставлю выше $ DirectoryListing в "".

В список выглядит так:


Код:
_uninst
admindocs bin cgi-bin conf example_module htdocs icons include keys.q.hpicheck.com keys.q.hpicheck.com.20061002_141729 keys.q.racexaminations.co.uk keys.q.racvehiclehealthcheck.co.uk keys.q.vehiclestatusreport.co.uk libexec license logs man readme ssl tivready version.signature

Так что я один <br> после первой записи. Я не понимаю, почему перерыва не заменяет все другие помещения, хотя!

Еще раз спасибо за чтение.
grebbux.
Old 03-09-2008
grebbux grebbux is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2008
Сообщений: 10
Я сделал это.

Я пошла на массив подход.


Код:
declare -a DirectoryListing
$DirectoryListing=$(batch_ssh ${host} "ls -1 ${ServerInstallDir}")
for dir in ${DirectoryListing[@]}
do
echo $dir '<br>' >> $HTMLFILE
done

Благодарим за помощь в любом случае.

Решенные *** ***

grebbux.
Old 03-09-2008
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Регистрация: август 2001
Место проведения: Ashburn, Вирджиния
Сообщения: 9127
Цитата:
Первоначально Послано grebbux View Post
Я думаю, я получаю то, когда я пытаюсь это:


Код:
echo $DirectoryListing | sed 's/ /<br>/' >> $HTMLFILE

Так что я один <br> после первой записи. Я не понимаю, почему перерыва не заменяет все другие помещения, хотя!
Тот SED С командой только заменяет первый матч. Вам нужна G флаг, сделать их всех.


Код:
echo $DirectoryListing | sed 's/ /<br>/g' >> $HTMLFILE

Но я рад, что ты получил ее решить.
Old 03-09-2008
grebbux grebbux is offline
Зарегистрированный пользователь
  
 

Регистрация: Январь 2008
Сообщений: 10
Ах спасибо за ответ, я думаю, что SED замещения является лучшим решением.
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 02:13 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0