[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [obsdfr-misc] Fichier: /etc/profile - Utilisation des fonctions



Stéphane Chausson a écrit :
> Olivier Regnier a écrit , Le 29/03/08 14:51:
>> Jérôme Loyet a écrit :
>>> pourquoi tu ne fais pas un
>>>
>>> if /sbin/mount | /usr/bin/grep "/usr/obj"; then
>>>  ...
>>> fi
>>>
>>> ?
>>>
>>> 2008/3/29, Olivier Regnier <oregnier AT oregnier POINT info>:
>>>> Bonjour,
>>>>
>>>> J'ai développé une fonction afin de compiler OpenBSD depuis les
>>>> sources.
>>>>
>>>> Voici le code:
>>>>
>>>> [debut]
>>>> function build_userland
>>>> {
>>>>   if [[ ! -d /usr/obj ]] then
>>>>      echo "=> /usr/obj doesn't seem to exist!"
>>>>      return 0
>>>>   else if [[ ! `/sbin/mount | /usr/bin/grep "/usr/obj"` ]] then
>>>>           sudo /sbin/mount /usr/obj && sudo /sbin/newfs wd0h
>>>>           sudo /sbin/mount /usr/obj
>>>>       else
>>>>           echo "=> Error /usr/obj is already mounted!"
>>>>           return 0
>>>>       fi
>>>> fi
>>>> [suite]
>>>>
>>>> Le problème se situe au niveau du else if [[ `/sbin/mount |
>>>> /usr/bin/grep
>>>> "/usr/obj"` ]]
>>>>
>>>> J'obtiens à l'écran le message suivant:
>>>>
>>>> syntax error: `$(/sbin/mount | /usr/bin/grep "/usr/obj")' missing
>>>> expression operator
>>>>
>>>> Qu'en pensez-vous ?
>>>>
>>>> Merci d'avance.
>>>>
>>>>
>>>> --
>>>> Cordialement,
>>>> Olivier Regnier
>>>>
>>>> ________________________________
>>>> French OpenBSD mailing list
>>>> misc AT openbsd-france POINT org
>>>> http://www.openbsd-france.org/ml
>>>>
>>>>
>> Merci vous aviez raison donc le code devient maintenant:
>>
>> if ! /sbin/mount | /usr/bin/grep "/usr/obj"; then
>>     sudo /sbin/newfs wd0h && sudo /sbin/mount /usr/obj
>> else
>>     sudo /sbin/umount /usr/obj && sudo /sbin/newfs wd0h
>>     sudo /sbin/mount /usr/obj
>> fi
>>
>> Si la partition est démontée, elle est formatée puis remontée
>> sinon elle démontée, formaté puis remonté.
>>
>> S'il est possible d'améliorer ce code, je suis preneur.
>>
>> Merci.
>>
>
> Puisque la partition doit être "formatée" et montée à la fin :
>
> if /sbin/mount | /usr/bin/grep "/usr/obj"; then
> 	sudo /sbin/umount /usr/obj
> fi
>
> sudo /sbin/newfs wd0h
> sudo /sbin/mount /usr/obj
>
> Mais bon, il y a plus d'une façon de faire. ;-)
>
> ________________________________
> French OpenBSD mailing list
> misc AT openbsd-france POINT org
> http://www.openbsd-france.org/ml
>
>
Merci pour ce code, il est plus simple.

Pendant que j'y suis, je n'arrive pas à écrire dans le fichier
/var/log/monfichier avec la commande:

sudo echo "coucou" >/var/log/monfichier

Il me dit simplement: permission denied. Du coup, j'ai essayé une commande
du style:

sudo "echo 'coucou' >/var/log/monfichier" et j'obtiens un command not found.

Un avis s'il vous plaît ?

Merci.

-- 
Cordialement,
Olivier Regnier