2013-08-15 3 views
1

Я пишу сценарий, чтобы отображать квоту всех пользователей в моем каталоге LDAP. Для этого Я использую ldapsearch с соответствующими фильтрами, чтобы получить список моих имен пользователей в файле. Затем я запускаю этот файл через цикл while, который читает файл по очереди и использует документ here для отправки имени пользователя в оболочку cyrus. Это то, что цикл выглядит следующим образом:Получить выход квоты от cyradm (cyrus) в сценарии bash

while read userName;do 

     cyradm -u cyrus -w my_cyrus_password localhost << sample 
lq user/$userName 
sample 

done</home/myuser/tempfiles/tempnames.txt 

lq, где находится команда cyradm в список квоты для пользователя.

Мне нужно вывести имя пользователя и соответствующую ему квоту в файл. Как это сделать из цикла?

+0

Есть ли тип в «ввода имя пользователя и его соответствующая квота в файл»? Должно ли это «выводить имя пользователя и соответствующую ему квоту в файл»? –

+0

@JtheRocker - Извините, была опечатка. Исправленный. – rahuL

+0

Попробуйте это -> 'echo $ (cyradm -u cyrus -w my_cyrus_password localhost << образец lq user/$ userName образец)> outfile' –

ответ

1

Надеется, что вы пробовали это ->

while read userName;do 

echo $(cyradm -u cyrus -w my_cyrus_password localhost << sample 
lq user/$userName 
sample 
) >> outfile 

done</home/myuser/tempfiles/tempnames.txt 
+0

Я также нашел, что '>> outfile' присоединяется к файлу (поскольку мы находимся в цикле' while') – rahuL

+0

Да. Исправить >> добавляет –