« SSH - Utilisation de tmux » et « PYTHON - Les bases » : différence entre les pages

De PedroWiki
(Différence entre les pages)
Aller à la navigationAller à la recherche
imported>Jules
Aucun résumé des modifications
 
imported>Jules
 
Ligne 1 : Ligne 1 :
= Introduction =
= Introduction =


Cf ces liens:
Cet article sert de bloc note lors de mon apprentissage du langage Python.
* [https://fr.wikipedia.org/wiki/Tmux La page Wikipedia sur tmux]
Il a plus vocation à être un pense bête qu'un vrai support de formation.
* [https://github.com/tmux/tmux/wiki Le dépôt Github du projet]
* [https://www.hamvocke.com/blog/a-quick-and-easy-guide-to-tmux/ Un tuto rapide sur le sujet]


= Utilité =
= Liens utiles =


Tmux, comme l'indique Wikipedia, est un '''multiplexeur de terminaux'''.
* [https://www.python.org/about/gettingstarted/ Python pour les débutants].
* [https://www.learnpython.org/ Learn Python].


L'idée est de gérer, dans une session terminal (en local ou à distance via SSH), des terminaux virtuels.
= Généralités =


Ces terminaux virtuels et les sessions associées peuvent continuer à fonctionner même quand votre session de terminal initial est fermée. On peut ainsi par exemple lancer une commande très longue dans un terminal virtuel, fermer sa session, revenir le lendemain et reprendre la main sur le terminal virtuel pour vérifier le résultat.
* Langage fortement objet.
* Non typé.
* Pas de déclaration des variables nécessaire.
* Indentation "standard" python: 4 espaces.


= Les commandes les plus utiles =
= Le couteau suisse: Print =


== Notion de prefix ==
* La BASE: Commande d'affichage.


Les commandes tmux peuvent être appellées via l'utilisation d'un préfixe et d'une commande.
Usage:
print("chaine de caractère")
ou
print(variable)
 
* Affichage d'une variable en forçant le type:
 
Usage:
stringVar = "toto"
print("String: %s" % stringVar)
intVar = 1
print("Int: %d" % intVar)
floatVar = 15.0
print("Float: %f" % floatVar)
 
= Variables =
 
== Affectation ==
 
Simple:
myvar = value
print(myvar)
 
Multiple:
varA, varB = 1, 2
print(varA)
print(varB)


Le préfixe par défaut dans tmux est:
== Chaînes de caractères / strings ==
C-b
Ceci signifie qu'il faut maintenir la touche contrôle enfoncée et taper le b. A ce stade, tmux attend une commande.


== Sessions ==
* Délimitées par des simples quotes ' ou des doubles quotes ".
* L'utilité des doubles quotes est de pouvoir inclure des apostrophes dans ses chaînes.


=== Ouvrir une nouvelle session ===
== Nombres ==


root@ot-jpd:~# '''tmux new -s jpd1'''
=== Integers ===


=== Quitter cette session ===
number1 = 1
print(number1)


  exit
=== Floats ===
 
  number2 = float(7)
number3 = 7.2
print(number2)
print(number3)
 
= Structures de données =
 
== Listes ==
 
<u>Généralités:</u>
* Les listes sont assez similaire à des tableaux.
* Les listes peuvent contenir tout type de variable.
* Les listes peuvent contenir autant d'item qu'on le souhaite.
* L'accès à un index qui n'existe pas provoque une erreur/une exception.
 
<u>Syntaxe:</u>
 
Initialisation:
AList = []
ou
ou
  ctrl+D
  AList = [1,2,3]


=== Se détacher d'une session (mais conserver la session active) ===
Méthode d'ajout d'un élément dans la liste:
AList.append(<element>)


  '''tmux detach'''
Accès à un élément:
  print(AList[0])


=== Lister les sessions en cours ===
Exception sur accès à un index inexistant:
IndexError: list index out of range


root@ot-jpd:~# '''tmux list-sessions'''
= Operators =
jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58]
root@ot-jpd:~# tmux list-sessions
jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58]
root@ot-jpd:~# tmux new -s jpd2
[detached (from session jpd2)]
root@ot-jpd:~# tmux list-sessions
jpd1: 1 windows (created Thu Mar 21 16:21:56 2019) [192x58]
jpd2: 1 windows (created Thu Mar 21 16:25:49 2019) [192x58]


== Pane ==
== Comparaison ==


=== Diviser sa session en panneaux (pane) ===
* Opérateur: '''=='''


Splitter horizontalement (1 pane à gauche, 1 à droite):
== Sum / Concatenation ==
(C-b) %


Splitter verticalement (1 pane en haut, 1 en bas):
* Opérateur: '''+'''
(C-b) "


=== Se déplacer entre les panneaux ===
<u>Example:</u>
 
one = 1
  (C-b) <flèche de direction>
two = 2
three = one + two
print(three)
ou
str1 = "Hello"
str2 = "World"
strFull = str1 + " " + str2
  print(strFull)


== Windows ==
* '''ATTENTION''' cela implique qu'on ne peut pas mélanger les variables numbers et strings lors de l'usage de cet opérateur.


=== Créer une nouvelle fenêtre ===
<u>Example non fonctionnel:</u>
one = 1
two = 2
string = "chaine"
print(one + two + string)


(C-b) n
== Logical AND ==


=== Naviguer entre les fenêtres ===
* Opérateur: '''and'''


Fenêtre précédente:
= Structures de contrôle =


(C-b) p
== If ==


Fenêtre suivante:
<u>Usage:</u>
if (condition):
    action


  (C-b) n
<u>Example:</u>
  if stringVar == "Value":
    print("Chaine: %s" % stringVar)


Fenêtre <>:
<u>Conditions multiples:</u>
numVar = 3
if isinstance(numVar, int) and numVar == 3:
    print("Valeur numérique: %d" % numVar)


(C-b) <n°>
== For ==


<u>Usage:</u>
for x in <values>:
    print x


[[Category:Linux]]
<u>Example:</u>
[[Category:Commande]]
AList = []
[[Category:SSH]]
AList.append(1)
AList.append(2)
AList.append(3)
for x in AList:
    print x

Version du 4 janvier 2021 à 16:23

Introduction

Cet article sert de bloc note lors de mon apprentissage du langage Python. Il a plus vocation à être un pense bête qu'un vrai support de formation.

Liens utiles

Généralités

  • Langage fortement objet.
  • Non typé.
  • Pas de déclaration des variables nécessaire.
  • Indentation "standard" python: 4 espaces.

Le couteau suisse: Print

  • La BASE: Commande d'affichage.

Usage:

print("chaine de caractère")

ou

print(variable)
  • Affichage d'une variable en forçant le type:

Usage:

stringVar = "toto"
print("String: %s" % stringVar)
intVar = 1
print("Int: %d" % intVar)
floatVar = 15.0
print("Float: %f" % floatVar)

Variables

Affectation

Simple:

myvar = value
print(myvar)

Multiple:

varA, varB = 1, 2
print(varA)
print(varB)

Chaînes de caractères / strings

  • Délimitées par des simples quotes ' ou des doubles quotes ".
  • L'utilité des doubles quotes est de pouvoir inclure des apostrophes dans ses chaînes.

Nombres

Integers

number1 = 1
print(number1)

Floats

number2 = float(7)
number3 = 7.2
print(number2)
print(number3)

Structures de données

Listes

Généralités:

  • Les listes sont assez similaire à des tableaux.
  • Les listes peuvent contenir tout type de variable.
  • Les listes peuvent contenir autant d'item qu'on le souhaite.
  • L'accès à un index qui n'existe pas provoque une erreur/une exception.

Syntaxe:

Initialisation:

AList = []

ou

AList = [1,2,3]

Méthode d'ajout d'un élément dans la liste:

AList.append(<element>)

Accès à un élément:

print(AList[0])

Exception sur accès à un index inexistant:

IndexError: list index out of range

Operators

Comparaison

  • Opérateur: ==

Sum / Concatenation

  • Opérateur: +

Example:

one = 1
two = 2
three = one + two
print(three)

ou

str1 = "Hello"
str2 = "World"
strFull = str1 + " " + str2
print(strFull)
  • ATTENTION cela implique qu'on ne peut pas mélanger les variables numbers et strings lors de l'usage de cet opérateur.

Example non fonctionnel:

one = 1
two = 2
string = "chaine"
print(one + two + string)

Logical AND

  • Opérateur: and

Structures de contrôle

If

Usage:

if (condition):
    action

Example:

if stringVar == "Value":
    print("Chaine: %s" % stringVar)

Conditions multiples:

numVar = 3
if isinstance(numVar, int) and numVar == 3:
    print("Valeur numérique: %d" % numVar)

For

Usage:

for x in <values>:
    print x

Example:

AList = []
AList.append(1)
AList.append(2)
AList.append(3)
for x in AList:
    print x