Editer des fichiers plist via un script shell
abou
-
abou -
abou -
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
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:
- Editer des fichiers plist via un script shell
- Classic shell - Télécharger - Personnalisation
- Comment réduire la taille d'un fichier - Guide
- Renommer des fichiers en masse - Guide
- Comment ouvrir un fichier epub ? - Guide
- Script vidéo youtube - Guide
6 réponses
On peut voir les propriétés de ce fichier :
Et si tu ne crées pas le fichier au départ et que tu y envoies directement un :
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
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
-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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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
-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