Alteis Posté(e) le 5 septembre 2012 Partager Posté(e) le 5 septembre 2012 Bonjour, Pour commencer je ne sais pas si je poste dans la bonne section... Je suis un peu perdu et j'aimerai bien commencer à comprendre. Linux..Unix moi je suis sous Mac est ce que linux a un rapport dans tout ça? J'ai dévouvert le terminal avec une ligne de commande, est ce du langage Shell? Est ce que c'est avec ce même langage que l'on édite les script? A ce propos est ce que l'on edite dans le terminal ou dans un editeur type NotePad ++ Et a quoi sert un script? Et par ou je pourrais commencer? pour un noob comme moi? Merci pour le temps que vous prenez pour m'aider à comprendre un peu ce monde obscure et surtout pour que je puisse me rendre compte de la réelle valeur ajoutée d'un script et l'intérêt de mettre mon p'tit nez dedans Cordialement Altéis 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
polopolo92 Posté(e) le 6 septembre 2012 Partager Posté(e) le 6 septembre 2012 Bonjour en gors, le terminal permet de taper directement des commandes système et le script d’enchaîner ces commandes en les regroupant dans un fichier Maintenant à quoi sert un script ? la question est surtout quel est le besoin car on peut tout lui faire faire ? Pour l'instant les outils Synology m'ont largement suffit. j'ai juste utilisé quelques commandes Linux pour comprendre pourquoi mon système ramait ( "ps", "top" ...) et farfouiller dans les répertoires non visibles dans le file station sinon on peut éditer les scripts avec NotePad++ à condition de les enregistrer au format Linux (pb du retour chariot). je ne sais pas si ce problème existe sous Mac. en espérant éclairer un peu 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 6 septembre 2012 Auteur Partager Posté(e) le 6 septembre 2012 en faite je suis de nature curieuse et j'ai envie de comprendre, mais c'est toujours pareil par ou commencer... je crois qu'une bonne recherche sur google va m'aider Donc si je résume le terminal execute des commandes le script est édité ds un éditeur type NotePad++ Le langage est du shell ds le terminal Mais quel est le langage ds le script? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MrWaloo Posté(e) le 6 septembre 2012 Partager Posté(e) le 6 septembre 2012 (modifié) Salut Un script sert à automatiser une suite de commandes que tu pourrais taper dans un terminal. Plutôt que de toujours lancer les mêmes commandes, tu mets tout ça dans un fichier, les commandes les unes derrières les autres et hop, tu as un script. Le site du zér0 a un bon tutoriel pour commencer les scripts. Il faut savoir que ton Mac est sur base Unix et que tu as un terminal accessible, mais ne me demande pas à moi comment y accéder, je ne l'ai fait qu'une fois et je ne suis pas utilisateur Mac, plutôt Debian sur PC. Les commandes sont sensiblement les mêmes. S'il te manque des commandes, tu peux les installer (sur Debian par exemple, je crois que 'beep' n'est pas installé de base). En recherchant ipkg sur ce forum ou ailleurs, tu trouveras ton bonheur. Des langages de script, il en existe des tas (perl, python, bash, shell, awk, ash, etc.) à toi de faire ton choix. A+ Michel Modifié le 6 septembre 2012 par MrWaloo 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 6 septembre 2012 Auteur Partager Posté(e) le 6 septembre 2012 Merci je commence à saisir, je suis justement en train de regarder quelques sites et m'amuser avec certaines manip, je vais aller voir le site que tu me conseilles. Si je comprends bien je peux utiliser n'importe quel langage cité dans ton post le résultat sera le meme une fois compilé en script 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MrWaloo Posté(e) le 6 septembre 2012 Partager Posté(e) le 6 septembre 2012 Un script n'est pas compilé (presque pas pour python). Ou plutôt il n'y a pas de procédure de compilation pour les scripts. C'est pas comme un programme en C ou autre... le script c'est du texte, pas le résultat d'une compilation 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 6 septembre 2012 Auteur Partager Posté(e) le 6 septembre 2012 (modifié) j'ai l impression que Python semble le langage le plus accessible pour débuter en programmation,juste une confirmation SVP si je commence à apprendre dans ce langage je pourrais editer un script Modifié le 6 septembre 2012 par Alteis 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MrWaloo Posté(e) le 6 septembre 2012 Partager Posté(e) le 6 septembre 2012 (modifié) Alors, si tu n'as jamais programmer de ta vie, il ne faut peut être pas commencer par un langage de programmation orienté objet. Je ne dis pas que python n'est pas bien (je ne jure que par python), mais il faut d'abord commencer avec un langage simple pour découvrir l'algorithmie et s'habituer à penser à comment programmer telle ou telle fonctionnalité. L'orienté objet est très puissant, mais commencer par ça, c'est favoriser le découragement... C'est mon avis. Commence avec le bash ou le shell script, ton Mac sais l'exécuter, je cois. Tu peux faire un tas de choses déjà avec ces langages. Comme je l'ai déjà indiquer, une suite de commandes dans un fichier, c'est un script. Si tu mets ceci dans un fichier, que tu l'enregistres en script_001.sh, tu auras ton premier script !!! #!/bin/sh # Premier script qui commence par un commentaire, de description hyper compréhensible # On commence par afficher où est ce que je suis dans l'arborescence echo "Vous vous situez dans le répertoire :" pwd # Séparateur echo "=-=-=-=-=-=-=-=-=" # Demande de saisie du prénom echo "Veuillez saisir votre prénom s'il vous plaît" read prenom while [ -z $prenom ] do echo "Votre prénom ne peut être vide, merci de saisir votre vrai prénom" read prenom done # Séparateur echo "=-=-=-=-=-=-=-=-=" echo "Bonjour $prenom, bonne journée à vous et gros bisou !!!" exit 0 En l'exécutant dans un terminal (le terminal d'un NAS Synology) : NAS> /bin/sh script_001.sh Vous vous situez dans le répertoire : /root =-=-=-=-=-=-=-=-= Veuillez saisir votre prénom s'il vous plaît Votre prénom ne peut être vide, merci de saisir votre vrai prénom Michel =-=-=-=-=-=-=-=-= Bonjour Michel, bonne journée à vous et gros bisou !!! Voilà.... A+ Michel Modifié le 6 septembre 2012 par MrWaloo 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 6 septembre 2012 Auteur Partager Posté(e) le 6 septembre 2012 merci de me suivre et de m'orienter en effet dans le terminal je pense que naturellement on commence sur du bash donc du shell,vous me corrigez si je dis des bêtises . Et pour passer sur le langage Python il suffit simplement de taper Python... Bon bon je venais de trouver un tuto sur siteduzero qui pas à pas me guide vers l'apprentissage donc je mets de coté pour aller chercher du bash Par contre que veux tu dire par : Orienter objet? c'est dommage sur ce site j'ai l'impression que c'est plus documenté pour Python que pour du bash Penses tu que la différence soit si importante? et le pas si compliqué? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MrWaloo Posté(e) le 6 septembre 2012 Partager Posté(e) le 6 septembre 2012 en effet dans le terminal je pense que naturellement on commence sur du bash donc du shell,vous me corrigez si je dis des bêtises . Alors... Un langage de script est interprété (et non pas compilé, ou alors pré-compilé pour le python, mais c'est spécial) et a donc besoin d'un interpréteur. /bin/sh est un exécutable qui interprète un script shell. /bin/ash est l'interpréteur des commandes passées au terminal d'un Syno. Il est plus facile de faire du "shell script" parce que l'interpréteur est directement disponible, pour tester des commandes, c'est pratique. Et pour passer sur le langage Python il suffit simplement de taper Python... Presque... Il faut que python soit installé et savoir où se trouve sont exécutable... Par contre que veux tu dire par : Orienter objet? C'est une manière de programmer. Dans un langage qui n'est pas orienté objet, les variable sont "simples". Bien sûr il existe différents types (valeurs entières, valeurs réelle, chaîne de caractères, des listes...) mais les variables ne serve que à stocker leur donnée. En POO (Programmation Orientée Objet) les variables sont des objet d'un certain type. (Tu peux créer tes propres objets) Par exemple, en python tout est objet. Pour connaître la longueur d'une chaîne de caractère en PHP (langage de script aussi, mais par forcément orienté objet... (ça devient difficile d'être clair et juste)) ce sera avec la fonction strlen(variable_string). C'est une fonction php qui se trouve dans la bibliothèque du langage qui est appelée et qui retourne un entier qui correspond au nombre de caractères de la chaine de caractère passée en paramètre. En python, les chaines de caractères sont des objet str() qui ont une propriété len(), En python, on obtient la longueur d'une chaine avec variable_string.len(). c'est dommage sur ce site j'ai l'impression que c'est plus documenté pour Python que pour du bash Effectivement le tutoriel pour python est très bien fait, celui pour bash est un épisode de l'approche de linux... Penses tu que la différence soit si importante? et le pas si compliqué? Oh que oui. Mais je pense que ce n'est pas strictement impossible de commencer par python. C'est un super langage. Si tu prends le temps de bien comprendre chaque chapitre et de les travailler, il n'y a pas de raison, le site du zér0 est fait pour ça en fait... A+ Michel 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 7 septembre 2012 Auteur Partager Posté(e) le 7 septembre 2012 (modifié) Alors... Un langage de script est interprété (et non pas compilé, ou alors pré-compilé pour le python, mais c'est spécial) et a donc besoin d'un interpréteur. /bin/sh est un exécutable qui interprète un script shell. /bin/ash est l'interpréteur des commandes passées au terminal d'un Syno. Il est plus facile de faire du "shell script" parce que l'interpréteur est directement disponible, pour tester des commandes, c'est pratique. Oki je comprends l'interet de valider au fil de l'eau ses commandes Pour se qui est des /Bin/* si je comprends bien se sont des répertoires du système Unix avec à l'interieur de chacun un exécutable et un interpréteur Presque... Il faut que python soit installé et savoir où se trouve sont exécutable... Alors la je nage.... J'ai vu un pack dans le centre des paquets nommé Python, je me suis dis que celui tombait à pic... donc je l'ai installé je vais me mettre dedans C'est une manière de programmer. Dans un langage qui n'est pas orienté objet, les variable sont "simples". Bien sûr il existe différents types (valeurs entières, valeurs réelle, chaîne de caractères, des listes...) mais les variables ne serve que à stocker leur donnée. En POO (Programmation Orientée Objet) les variables sont des objet d'un certain type. (Tu peux créer tes propres objets) Par exemple, en python tout est objet. Pour connaître la longueur d'une chaîne de caractère en PHP (langage de script aussi, mais par forcément orienté objet... (ça devient difficile d'être clair et juste)) ce sera avec la fonction strlen(variable_string). C'est une fonction php qui se trouve dans la bibliothèque du langage qui est appelée et qui retourne un entier qui correspond au nombre de caractères de la chaine de caractère passée en paramètre. En python, les chaines de caractères sont des objet str() qui ont une propriété len(), En python, on obtient la longueur d'une chaine avec variable_string.len(). Je te crois Oh que oui. Mais je pense que ce n'est pas strictement impossible de commencer par python. C'est un super langage. Si tu prends le temps de bien comprendre chaque chapitre et de les travailler, il n'y a pas de raison, le site du zér0 est fait pour ça en fait... Ok je me lance avec Python Merci Modifié le 7 septembre 2012 par Alteis 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alteis Posté(e) le 7 septembre 2012 Auteur Partager Posté(e) le 7 septembre 2012 Une question de curiosité: quand on a ton niveau, est ce une passion? un métier? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
tonymans72 Posté(e) le 7 septembre 2012 Partager Posté(e) le 7 septembre 2012 Ça s'apprend également dans des formations scolaires Souvent une passion qui se transforme en métier 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
MrWaloo Posté(e) le 7 septembre 2012 Partager Posté(e) le 7 septembre 2012 Oki je comprends l'interet de valider au fil de l'eau ses commandes Pour se qui est des /Bin/* si je comprends bien se sont des répertoires du système Unix avec à l'interieur de chacun un exécutable et un interpréteur L'interpréteur est un exécutable Alors la je nage.... J'ai vu un pack dans le centre des paquets nommé Python, je me suis dis que celui tombait à pic... donc je l'ai installé je vais me mettre dedans Ça viendra, je n'ai pas installé ce paquet, mais je pense qu'il a ce qu'il faut pour commencer. quand on a ton niveau, est ce une passion? un métier? Tu vas me faire rougir ! Je suis curieux et j'en ai déjà eu besoin professionnellement, alors je m'y suis mis. A+ Michel 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.