Résolu le 30-12-18 Récupérer le nom d'un fichier

Questions concernant les lignes de commandes
Répondre
Avatar du membre
tiogran
Messages : 163
Enregistré le : jeu. 24 nov. 2016 20:03

Récupérer le nom d'un fichier

Message par tiogran »

Bonjour,

Existe-t-il une commande pour récupérer le nom d'un fichier et plus précisement le nom d'un fichier .sh que l'on executerai, Merci!

tiogran
Modifié en dernier par tiogran le dim. 1 janv. 2017 22:04, modifié 1 fois.

Avatar du membre
mpat
Messages : 7845
Enregistré le : mar. 25 août 2015 21:12
Localisation : Belgique

Re: Récupérer le nom d'un fichier

Message par mpat »

salut, je suis pas sur de bien te suivre ... si tu crées un fichier .sh, tu dois le rendre exécutable, ensuite tu peux créer un lanceur pour ce fichier .sh
Clevo P775DM3-G
I7 -7700k (quad-core (8 threads) 4.2-4.5 ghz
ram 64go DDR4
Nvidia gtx 1080 8go GDDR5X
2 x ssd 500go m.2 Samsung + 2 to ssd Samsung
Lmint 18.3 Cinnamon 64bit, kernel 4.13.0-45

Avatar du membre
roromint
Messages : 2728
Enregistré le : dim. 28 févr. 2016 21:09
Localisation : ath

Re: Récupérer le nom d'un fichier

Message par roromint »

salux

si tu fais un accès du permission

les fichiers du permissions d'accès du administrateur

Code : Tout sélectionner

chmod +x nomdufichiers.sh
et puis tu installes un fichier du shell

Code : Tout sélectionner

sudo sh ./nomdufichiers.sh
voila
cordialement,
Ro.
-------------------------------------------------------
PS à lire du attentif pour mon handicap : je suis malentendant Étant dyslexique, j'ai des problèmes quant à la rédaction de messages en français courant. Je vous prie dès lors d'accepter toutes mes excuses si mes interventions peuvent vous paraître étranges et je vous remercie d'avance pour votre compréhension.
PS: pour les membres, ne pas faire la message privé de moi svp ! merci

Avatar du membre
tiogran
Messages : 163
Enregistré le : jeu. 24 nov. 2016 20:03

Re: Récupérer le nom d'un fichier

Message par tiogran »

Bonjour @mpat et @roromint,

Je ne sais plus ou j'ai vu cette signature mais elle illustrerait parfaitement ce qu'il m'arrive à cet instant et elle disait en gros "Il est plus difficile d'exprimer clairement sa demande que d'en obtenir une réponse". :D

Je ne cherche pas à lancer un fichier .sh mais à pouvoir affecter à une variable la valeur string de son nom (ou titre). par exemple si le fichier s'appelle "nomdudichier.sh" j'aimerai qu'il lance comme une sorte d'introspection de lui-même et qu'il renvoit une valeur par exemple : "je suis un fichier .sh et je me nomme "nomdufichier""

J'espère avoir clairement exprimer mon besoin
Configuration personnelle du PC.
i7 4790k
radeon 7970 4g
16g ram 2133
ssd 120g (pour windaube)
hdd 1T (pour linux)
Os = dual boot windows 10 (l'escroc)
linux mint (l'insoumis)
Environnement MATE.
Une devise? en ce moment une se rappelle souvent à mon bon souvenir "Le problème EST la solution"

Avatar du membre
roromint
Messages : 2728
Enregistré le : dim. 28 févr. 2016 21:09
Localisation : ath

Re: Récupérer le nom d'un fichier

Message par roromint »

bonjour
oui cpossible

Code : Tout sélectionner

mv nomdufichiers.sh remonedufichiers.sh 
voila
cordialement,
Ro.
-------------------------------------------------------
PS à lire du attentif pour mon handicap : je suis malentendant Étant dyslexique, j'ai des problèmes quant à la rédaction de messages en français courant. Je vous prie dès lors d'accepter toutes mes excuses si mes interventions peuvent vous paraître étranges et je vous remercie d'avance pour votre compréhension.
PS: pour les membres, ne pas faire la message privé de moi svp ! merci

Avatar du membre
tiogran
Messages : 163
Enregistré le : jeu. 24 nov. 2016 20:03

Re: Récupérer le nom d'un fichier

Message par tiogran »

Ce que tu écris signifie : déplaces le fichier "nomdufichier.sh" vers "renomefichiers.sh". Je souhaite pour ma part récupérer le nom du fichier pour l'affecter à une variable.
Peut être y-a-t-il méprise sur le terme "récupérer" et je devrai peut être dire "renvoyer"... Un exemple de récupération de valeur que je connaisse est la commande "pwd"; si on éxécute la commande "pwd" celle-ci renvoit le nom du repertoire parent.

Code : Tout sélectionner

#!/bin/bash
b=$PWD
echo $b
et le résultat sera quelquechose du genre "/home/nomdelutilisateur/nomdurepertoireparent"

edit: youhou j'ai trouvé! si j'inscris

Code : Tout sélectionner

#!/bin/bash
echo "mon nom est $0"
$0 renverra une chaine de caractère contenant le nom du fichier

Pour isoler le nom du fichier j'ai pensé à çà.

Code : Tout sélectionner

#!/bin/bash
#en partant du principe que le script n'est pas lançé depuis le terminal.
a=$0
b=$PWD
#supprime la chaine de caractère renvoyée par PWD par 
a=${a/$b/}
#supprime le type du fichier = il ne reste plus que le nom du fichier
a=${a/".sh"/}
Configuration personnelle du PC.
i7 4790k
radeon 7970 4g
16g ram 2133
ssd 120g (pour windaube)
hdd 1T (pour linux)
Os = dual boot windows 10 (l'escroc)
linux mint (l'insoumis)
Environnement MATE.
Une devise? en ce moment une se rappelle souvent à mon bon souvenir "Le problème EST la solution"

Répondre