[ShellScript] Quelques scripts shell pour Android

  • Auteur de la discussion Adrian DC
  • Date de début
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #1
Bonjour !

Voici quelques scripts shells écrits pour Android.
Certains sont très basiques, juste utilisés comme démonstrations des fonctions simples,
d'autres plus avancés, en particulier sur la gestion WiFi pour l'instant.

Personnellement, j'ai mes scripts dans le dossier /custom/scripts/
sur la carte MicroSD. Si certains scripts utilisent le chemin
et que vous mettez les scripts autre part, il faudra les adapter.

Les scripts sont faciles à utiliser avec SManager,
penser à ne pas les éditer avec Windows à moins de les enregistrer en encodage Linux.
En effet, les retours chariots de Windows créent des erreurs lors de l'execution des scripts.

Les fichiers scripts :
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


En détails :
- BootScript.sh : Un script que je mets en démarrage automatique, qui lance un script sur le WiFi.
- CPU_Infos.sh : Basique, retourne quelques infos processeur.
- SDCard_List.sh : Très basique, liste juste la SDCard.
- ThemesUpdate.sh : Va installer mes DefaultThemes.apk et TimescapeSpline.apk dans le system. [À adapter]
- WiFi : Dossier des scripts WiFi
--> WiFi_GetMAC.sh : Renvois entre autres l'adresse MAC active.
--> WiFi_SetMAC_False.sh : Applique une nouvelle adresse MAC et l'affiche. [À adapter]
--> WiFi_SetMAC_Real.sh : Même script, pour remettre votre MAC réel. [À adapter]
--> WiFi_TurnOff.sh : Éteint le service WiFi, utilisé par les autres scripts.
--> WiFi_TurnOn.sh : Allume le service WiFi, utilisé par les autres scripts.
- AndroidFilesInstaller : Nouveau! Mon script d'installation de fichiers systèmes !
--> AndroidFilesInstaller : Installe tous les fichiers présents dans le dossier. Variables au début à changer. [À adapter]

Pour plus d'informations sur mon AndroidFilesInstaller :
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !

Info : L'adresse MAC est restauré quoi qu'il se passe au démarrage de l'Arc/Arc S.

[À adapter] indique que le script contient des variables ou chemin d'accès à adapter selon vos besoins.

A plus !
Adrian DC
 
Thibou

Thibou

Membre
Inscrit
15 Juillet 2011
Messages
1 626
Points
38
  • #2
Merci !

C'est pas pour les noobs tout ça hein. :lol:
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #3
Mdr.
Dans un sens, si.
Tout est fait. Le but surtout de mon AndroidFilesInstaller.sh c'est de permettre
à quiconque d'installer en sécurité et facilement un application système.
Espérons que ca serve ^^. Moi je passe mon temps avec mtn :D
 
Thibou

Thibou

Membre
Inscrit
15 Juillet 2011
Messages
1 626
Points
38
  • #4
Ok. :lol:

Moi j'utilise pas du tout. :roll: (Ou peut être sans le savoir.)
Je bidouille quelques valleurs parci par là mais presque jamais de script comme ça.
La dernière fois que j'y ai touché c'était il y a 3 mois quand je voulais connecter une clé USB en OTG sur mon Kyno, et ça marchait pas. :|
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #5
xD.
Oui l'OTG j'ai pas mal essayé, mais rien à faire.
Il faut utiliser un Kernel alternatif, et comme je ne veux pas déverrouiller mon bootloader pour l'instant..
Tant pis. En fait j'ai un début de fonctionnement avec USB OTG Helper mais c'est peu stable..
Au moins les claviers USB et souris USB ca marche bien. Utile pour écrire ces scripts ;D
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #6
Salut,

qu'apporte ta modif de Timescape ? J'ai remarqué que les photos des contacts sur TimeScape étaient très zoomées, on ne voit que les yeux du visage, et je ne trouve pas comment dezoomer.

(tu as vu, je te suis à la trace, mais tes scripts sont efficaces...)

Merci
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #7
Ma modif de TimeScape..
Ca concerne mes DefaultThemes alors. Il y a un topic spécifique dans les thèmes.
Les changements n'altèrent en rien le fonctionnement le TimeScape,
mais seulement le fond d'écran des différentes sous applications, tels la messagerie ou les paramètres.
Le visage est étendu pour remplir l'espace, c'est comme ça.. :D
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #8
Adrian DC a dit:
Ma modif de TimeScape..
Ca concerne mes DefaultThemes alors. Il y a un topic spécifique dans les thèmes.
Les changements n'altèrent en rien le fonctionnement le TimeScape,
mais seulement le fond d'écran des différentes sous applications, tels la messagerie ou les paramètres.
Ok. J'irai voir si je trouve le post dont tu parles. Là, je ne vois pas trop l'apport des modifs.
Le visage est étendu pour remplir l'espace, c'est comme ça.. :D
Donc, pour ne pas avoir de zoom, il faudrait des photos en format 4x2 cm (donc le format des vignettes Timescape), ce qui sera franchement moche dans les fiches contacts et lors des appels. A quoi ils pensaient les ingénieurs de SE quand ils ont pondu ce truc ??? Ils n'auraient pas pu mettre le même format, où, a defaut, proposer de zoomer ou pas...
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #9
Je suis en train de bosser sur un script tout simple permettant de tracer l'utilisation du téléphone,
en traçant le Démarrage d'Android, les changements WiFi et / ou Réseau..
C'est pas grand chose mais je voulais le faire et les seules applis qui font quelque chose du style
ne m'ont pas du tout plu, donc je le fais moi-même.

Si ça intéresse quelqu'un, dites le moi, je le partagerai !
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #10
Ca peut-être utile, effectivement.
Personnellement, j'ai un gros doute : a chaque fois que je sors le tel de ma poche, ou presque, j'ai un petit triangle rouge, "aucun service" affiché en bas, et, après 1 ou 2 sec, ca disparait. Je voudrais donc bien savoir ce qui se passe au fond de ma poche, et surtout, si l'accès au réseau est effectivement coupé ou pas.
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #11
Je ne suis pas sûr pour les connexions réseaux téléphone, je ne sais pas si SManager le vois,
pas pour l'instant en tout cas de ce que j'ai testé...

Je viens de passer 2 heures sur le système de gestion de mes logs,
afin de supprimer tout log datant d'avant hier pour garder les journaux utiles,
donc ça c'est parfait maintenant !

Le script trace l'exécution, l'activation et désactivation du WiFi,
ainsi que le démarrage d'Android, au boot de SManager.

Un screen :

S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


Je vais le mettre dans mon pack de script, si ça en intéresse, mettez le On Boot, On Network, ...
Le Root n'est pas demandé pour ce script, je me débrouille sans.
Voir après les configs de SManager pour que ça se fasse en arrière plan.
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #12
Donc, si tu as la date d'avant-hier, tu vas pouvoir l’implémenter pour le contrôle du backup CWM ;)
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #13
Déjà prévu ^^

Pour te donner une idée du code :

DateTimeYear=$(date +'%Y'); DateTimeMonth=$(date +'%m'); DateTimeDay=$(date +'%d');
if [[ $DateTimeDay -eq 1 ]]; then
if [[ $DateTimeMonth -eq 1 ]]; then DateTimeMonth=12; DateTimeYear=$(expr $DateTimeYear - 1);
else DateTimeMonth=$(expr $DateTimeMonth - 1); fi;
cal $DateTimeMonth $DateTimeYear | grep 31 1>/dev/null 2>&1;
if [[ $? -eq 0 ]]; then DateTimeDay=31;
else DateTimeDay=30; fi;
else DateTimeDay=$(expr $DateTimeDay + 0); DateTimeDay=$(expr $DateTimeDay - 1); fi
if [[ $(echo $DateTimeMonth | wc -c) -eq 2 ]]; then DateTimeMonth=0$DateTimeMonth; fi;
if [[ $(echo $DateTimeDay | wc -c) -eq 2 ]]; then DateTimeDay=0$DateTimeDay; fi;
DateTimeTodayDate=$(date +'%Y\/%m\/%d')
DateTimeYesterdayDate="$DateTimeYear\/$DateTimeMonth\/$DateTimeDay";

C'est dans le pack, si tu veux tester, fais toi plaisir :D
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #14
Tu as pris en compte le mois de février et les années bisextiles ? Je vois ni 28 ni 29 ;)

Ben, comme je suis juste en place libre (20Mo, j'arrive pas a aller plus loin, faudrait que je passe à link2SD avec sa partoche dediée), j'hésite... J'attends la nouvelle version du CustomPack avec plein de trucs trop bien dedans ;) pour faire une reinstall "from scratch".
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #15
Je sais j'y ais pensé mais je n'ai pas fait le changemenent avant de poster le code...
Pas grave, de toute façon il y a encore du temps avant février 2013 :D

CustomChanges pour l'instant, à part le Lockscreen Xperia S (s'il fonctionne un jour en s'installant depuis Android,
sinon le passage par un petit zip sera obligé pour un framework) et une amélioration du script,
il n'y a pas beaucoup de nouvelles choses, ça fonctionne plutôt bien et tout ce que j'ai testé depuis n'apporte rien ^^...

Je suis en train de mettre en ligne AndroidAppsEditor, ça intéressera surtout des développeurs je pense.
@+
 
L

Largo38

Membre
Inscrit
22 Février 2012
Messages
503
Points
18
  • #16
C'est clair, il y a le temps. Quand bien même le script conseille un backup le 1er mars alors qu'il y en a eu un le 28/2, c'est pas vraiment gênant, hein ;)

Ah, ben rien que pour le lockscreen avec les notifications (si c'est bien de celui là dont tu parles) et le clavier (déjà implémenté), ca vaut le coup. Mais j'aime pas bien quand tu écris "s'il fonctionne un jour en s'installant depuis Android, sinon le passage par un petit zip sera obligé pour un framework".
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #17
Ca a mis du temps à fonctionner mais voici tout simplement mon code pour récupérer le dernier jour du mois :

AndroidStatusTracer.sh a dit:
DateTimeDay=$(cal $DateTimeMonth $DateTimeYear | sed -e "s/ /\n/g" | grep [0-9][0-9] | tail -1);


Au final :

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!
 
Y

yellow288

Membre
Inscrit
29 Juillet 2012
Messages
1
Points
0
  • #18
salut,
je tape un peu l'incruste vite fait :)

je recherche un moyen d'activer automatiquement vers 1H00 le mode memoire usb afin de pouvoir lancer ensuite quelques script entre mon windows et la memoire usb de stockage.

une idée ? une appli ? un script android ou sous windows ?

merci d'avance

yellow288
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #19
Je n'ai pas en tête une commande qui permette de basculer de mtp.à msc, mais il fait chercher, ça existe peut être.

Sinon sur Windows, un script ou programme qui active l'USB à telle heure?
 
B

BiV'

Membre
Inscrit
15 Mars 2013
Messages
3
Points
0
  • #20
Bonjour à tous,
Je me permet de remonter ce sujet pour parler script.
J'ai un galaxy note sous Cyanogen
Je cherche à faire des petits scripts et pour l'instant je cherche déjà à lancer le script.
Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!
dans un fichier test.sh
je lance avec su ./test.sh
Le retour c'est Unknown id: ./test.sh

Je ne trouve rien sur Unknown id, merci pour votre aide.
 
Adrian DC

Adrian DC

Membre
Inscrit
14 Mars 2012
Messages
849
Points
36
  • #21
Bonjour.

Pour faire un test, tu peux déjà faire un :
#!/system/bin/sh
echo "Ok";

Ensuite, il suffit de lancer le fichier avec SManager, en allant directement le chercher.

Si su ./test.sh est refusé, le dossier courant n'est peut-être pas bon,
on bien la commande a une ligne de commande différente.

Il est normalement possible de faire :
su;
./test.sh

Bonne journée !
 
B

BiV'

Membre
Inscrit
15 Mars 2013
Messages
3
Points
0
  • #22
Merci pour cette réponse rapide. Je ne connaissais pas smanager.
Du coup ça marche beaucoup mieux.

En fait je veux faire un script pour effacer des fichier s. Maintenant je bute sur des fichiers introuvables.
 
P

PaulElstack

Membre
Inscrit
24 Janvier 2016
Messages
2
Points
1
  • #23
Le lien du down pour les scripts ne me lance qu'une page web de hosting est normal ?
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
 
P

PaulElstack

Membre
Inscrit
24 Janvier 2016
Messages
2
Points
1
  • #24
Bonne journée et merci de vos réponses
 

Sujets en relation

Haut Bas