chmod +x comme fonction

Questions concernant les lignes de commandes
Répondre
Avatar du membre
kernkraftx
Messages : 4
Enregistré le : jeu. 25 févr. 2016 21:35

chmod +x comme fonction

Message par kernkraftx »

Allo à tous!

j'aimerais créer une focntion avec chmod +x, pour faire juste chmod sur un fichier ou dosier au lieu d'écrire tout le script, mais je ne vois pas elle est ou l'erreur quand je la lance. Je suis un peu melé.

#!/bin/bash

chmod +x $1

Mais je n'arrive pas a la lancer. J`ai une erreur qui apparaît:
bash: /usr/local/bin/chmod.sh: No such file or directory


Mon fichier s'appele chmod.sh, c'est bizzare, on apprend des fonctions compliquées avec des while, et if, mais lancer et créer des scripts aussi simple me perplexe... :S

merci à tous!
LINUX MINT 17.3 et CENTOS 6, KALI LINUX 2.0,
Intel(R) Core(TM)i7-4710HQ CPU @ 2.50GHz,
16GB,
2332 02.38,F.32,
Intel(R) Dual Band Wireless-AC 7260
Firefox,Chrome,Iceweasel

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

Re: chmod +x comme fonction

Message par mpat »

1. chmod u+x $script git commit -am "fixing the script permissions... again..."
ou
2. git update-index --chmod=+x $script

Appliquer automatiquement "git update-index --chmod + x" pour les fichiers exécutables

Il y a plusieurs façons de le faire
1 - alias git
2 - alias bash
3 - ou même combiner bash et git alias
1 - alias Git
on peux toujours utiliser bash au sein de son alias git. Modifier ses alias:
vim ~/.gitconfig
Ajouter alias section (si elle n'existe pas):
[alias] addscr = !sh -c 'if [[ ${0: -3} == ".sh" ]]; then git update-index --chmod=+x $0; git add $0'

2 - alias bash
alias Modifier git fichier:
vim ~/.bashrc
Ajouter alias section à la fin du fichier:
function gitadd(){ if [[ ${1: -3} == ".sh" ]] then git update-index --chmod=+x $1 fi git add $1 } alias gitadd='gitadd'

3 - combiner git et bash alias
alias Modifier bash fichier:
vim ~/.bashrc
Ajouter alias section à la fin du fichier:
function checkShellFile(){ return ${1: -3} == ".sh" } alias gitadd='checkShellFile ? git addsrcipt "$1" : && git add "$1"'
alias Modifier git fichier:
vim ~/.gitconfig
Ajouter alias section (si elle n'existe pas):
[alias] addscript = !sh -c 'git update-index --chmod=+x $0 && gti add $0'

il y a des sites spécialisés qui donnent des exemples bien mieux que ceci.
Modifié en dernier par mpat le jeu. 3 mars 2016 09:36, modifié 1 fois.
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
dagonh
Messages : 1512
Enregistré le : lun. 13 juil. 2015 15:41

Re: chmod +x comme fonction

Message par dagonh »

kernkraftx a écrit :Mais je n'arrive pas a la lancer. J`ai une erreur qui apparaît:
bash: /usr/local/bin/chmod.sh: No such file or directory
Les .sh, faut leur donner le répertoire source sinon ils sont cherchés dans /usr/local/bin.

Si tu es dans le répertoire où se trouve le fichier, tape "./chmod.sh fichier"

Mais il y a tant de façons de modifier les autorisations d'un fichier (y compris en mode graphique) que, franchement, ça ne vaut pas le coup… D'autant qu'avec ton shell, tu tapes finalement plus de caractères qu’en tapant la commande directe ! ;)
Modifié en dernier par dagonh le ven. 4 mars 2016 09:16, modifié 1 fois.
CM Gigabyte Z97-HD3, Intel i7-4790K, RAM 16 Go
système sur SSD 240 Go + 3 To pour les données (+2,5 To externes pour les sauvegardes)
Écran Hanns 27" 16/10
Sarah Maté

Avatar du membre
débitant
modérateur
Messages : 11536
Enregistré le : mar. 14 juil. 2015 18:22
Localisation : Lorraine France

Re: chmod +x comme fonction

Message par débitant »

kernkraftx comme demandé précédemment, pourrait tu éditer ta signature pour supprimer les balises "code", c'est trop agressif,
éventuellement remplaces les par les balises "quote" si tu veux,
merci d'avance

Avatar du membre
tyrry
Messages : 5608
Enregistré le : mar. 21 juil. 2015 07:42
Localisation : à l'ouest

Re: chmod +x comme fonction

Message par tyrry »

+1000 débitant , là ça donne envie de les copiés dans un terminal lol :arrow: :arrow: :mrgreen:
Desktop: LXDE Distro: Debian 12 Bookworm
Kernel: 6.1.0-18-amd64 Drive: Intel Nvme 240
CPU: Ryzen 3 PRO 2200GE RAM: 16 go Graphics Card: AMD ATI Radeon Vega Series

Avatar du membre
débitant
modérateur
Messages : 11536
Enregistré le : mar. 14 juil. 2015 18:22
Localisation : Lorraine France

Re: chmod +x comme fonction

Message par débitant »

ça attire les yeux plus que le sujet lui-même

Avatar du membre
kernkraftx
Messages : 4
Enregistré le : jeu. 25 févr. 2016 21:35

Re: chmod +x comme fonction

Message par kernkraftx »

Bon excellent, ca prit un peu de temps mais, ca bien fonctionné!

merci again!
LINUX MINT 17.3 et CENTOS 6, KALI LINUX 2.0,
Intel(R) Core(TM)i7-4710HQ CPU @ 2.50GHz,
16GB,
2332 02.38,F.32,
Intel(R) Dual Band Wireless-AC 7260
Firefox,Chrome,Iceweasel


Répondre