Editer des fichiers plist via un script shell

Fermé
abou - 26 févr. 2010 à 10:56
 abou - 27 févr. 2010 à 23:57
Bonjour
J'ai un problème d'écriture sur un fichier plist de mon iPhone JB
alors que les autorisations sont correctes.
Ce que je cherche à faire depuis un script shell que j'ai placé dans
le répertoire /sbin/ de l'iPhone :
Récupérer un fichier sur le Net avec la commande curl (OK).
Récupérer des infos contenues dans ce fichier avec des cat, sed etc
(OK).
Créer un fichier test.plist vide avec la commande touch (OK).
Copier les infos choisies dans test.plist avec des echo par exemple
(là pas OK) : le contenu du fichier est automatiquement écrasé (puis
vidé) même avec des echo >> !
En ssh avec le Terminal du mac j'arrive toujours à écrire dans le
fichier mais pas à partir de l'iPhone.
Voilà à quoi ressemble mon script :
#!/bin/sh
set -a prays
plistPath="/test.plist"
curl -fO "http://……/paris.php"
pr=$(cat ~/paris.php)
h=`date '+%H'`
m=`date '+%M'`
hs=`expr $h \* 3600`
ms=`expr $m \* 60`
ts=`expr $hs + $ms`
tmp=0
for ((j=1 ; j < 6 ; j++)) do
prays=`echo $pr|cut -d" " -f$j`
if $prays -gt $ts && $prays -lt $tmp; then
tmp=$prays
fi
done
nextOn=$tmp
nextOff=`expr $nextOn + 1800`
sudo touch $plistPath
#Je n'arrive donc pas à faire fonctionner cette commande
automatiquement au lancement du script :
echo "essai" >> $plistPath
Alors est-ce que quelqu'un voit ce que je ne vois pas ?
Merci infiniment
ABOU
A voir également:

6 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
26 févr. 2010 à 11:12
Salut,

A tout hasard, t'as essayé :

sudo echo "essai" >> $plistPath 
0
Malheureusement oui et c'est d'ailleurs la première chose à laquelle j'ai pensé.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
26 févr. 2010 à 17:10
On peut voir les propriétés de ce fichier :

stat /test.plist


Et si tu ne crées pas le fichier au départ et que tu y envoies directement un :

sudo echo "essai" > $plistPath 

0
Bonsoir

-rwxrwxrwx 1 root wheel 0 Feb 27 23:37 test.plist*

stat :

Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: e000003h/234881027d Inode: 1830585 Links: 1
Access: (0777/-rwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ wheel)
Access: 2010-02-25 22:25:12.000000000 +0100
Modify: 2010-02-27 23:37:31.000000000 +0100
Change: 2010-02-27 23:37:31.000000000 +0100

Déjà essayé le echo sans le touch !

Ce qui m'intrigue, et c'est pour ça que j'ai essayé en 2 étapes, c'est que j'arrive bien à créer le fichier et à écrire dessus via le terminal, mais dès que je lance le script le fichier se vide !

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Avec

sudo echo "essai" > $plistPath

Le fichier est bien créé mais il est vide :(
0
Droits :

-rwxrwxrwx 1 root wheel 0 Feb 27 23:37 test.plist*

Stat :

Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: e000003h/234881027d Inode: 1830585 Links: 1
Access: (0777/-rwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ wheel)
Access: 2010-02-25 22:25:12.000000000 +0100
Modify: 2010-02-27 23:37:31.000000000 +0100
Change: 2010-02-27 23:37:31.000000000 +0100

Cordialement
0