2017-10-04 5 views
1

Comment puis-je capturer la sortie de inotifywait dans ce cas, cela me rend fou.Capturez la sortie de inotifywait dans bash

Voici mon code:

while inotifywait -q -e create,delete --format '%T %:e "%f"' --timefmt '%d/%m/%y %H:%M' "$DIR" 
    do 
     echo -e "$line" >> /mnt/pidrive1/Digital_Signage/log/"$hostname"_sync.log 
     echo -e "Folder contents:" $file_number "files in total: " $folder_list >> /mnt/pidrive1/Digital_Signage/log/"$hostname"_sync.log 
    done 
+0

Qu'est-ce qui ne fonctionne pas ici? – Inian

+0

Je ne suis pas capturer le $ @ dans le fichier – Ossama

Répondre

2

Une façon beaucoup plus simple à réaliser ce que vous voulez serait:

while inotifywait <whaveter> >> sync.log 
do 
    # Nothing 
done 

Si vous devez faire des choses supplémentaires à votre sortie, vous pouvez dire:

while out=$(inotifywait <whaveter>) 
do 
    # Stuff 
    # Just use $out normally 
done 
+0

Je voudrais aussi insérer plus de code dans la boucle while, vous code ne me laissera pas faire, voir le code édité – Ossama

+0

@Ossama J'ai ajouté une version qui vous permet de capturer le sortie. – cnicutar