supinfo
Ouverture de  SUPINFO USA à San Francisco en 2008. Des études en informatique en Californie à un tarif abordable ! Inscrivez-vous dès maintenant !
supinfo
Connexion :

Recherche

  
   Tout| Actus| Télécharger| Comparateur de prix| Dossiers| Forums| Jeux| Google

9 messages
ok

Bash scripting

bonjour,

j'aimerai savoir si UBUNTU interprete les scripts en bash?
Si oui pouvez vous m'aider a trouver l'erreur dans le script suivant svp

le but est juste de remplacer la commande cp -pR source destination
en creer un repertoire de destination en prenant le soin de changer les permissions a 777 pour le repertoire et le fichier.

donc pour executer le script ca devrait donner
sh xxcopy [chemin source] [chemin arrivee] [ dossier de dest] [fichier]

#!\bin/bash
boolLoop="true"
while [ $boolLoop = "true" ]
do
clear
echo "this program takes 4 arguments and is executed as follows:"
echo " sh xxcopy [source path ] [ destination path] [ destination directory] [ file name]"
echo
echo "the source path is: $1"
echo "the destination path is: $2"
echo "the destination directory is: $3"
echo "the file name is: $4"
echo -n "Do you want to continue (y/n)?"
read userInput
tmp=$( (echo -n $userInput | tr [:upper:] [:lower:] ) )
case $tmp in

[Yy] | "yes")
BoolLoop="false"
;;
[Nn] | ["no"])
Echo "Exit program"
Exit 0
;;
*) boolLoop="true"
esac
done
clear
mkdir $2"/"$3
echo "Destination directory created"
echo "the command executed is: cp -pR $1"/"$4 $2"/"$3"/"$4
cp -pR $1"/"$4 $2"/"$3"/"$4
echo "copy completed"
chmod -R 777 $2"/"$3
echo "The destination file permissions have been changed to:"
ls -l $2"/"$3
 
 
Quel est ton erreur ?

Oui Unbuntu permet d'interpreter les scripts bash.
Mais imaginons que ton fichiers script.sh soit dans /home/name/, dans ce cas, pour éxecuter le script, il faut que /home/name/ soit dans la variable PATH.
D'habitude, on ajoute "." qui représente le répertoire courant.

Pour faire cela, tape ceci dans un terminal :
Code :
PATH=$PATH:.
 
 
Déjà, chmod +x xxcopy
Ensuite, ./xxcopy ...

Et puis remplace ton mkdir *2/$3 (pas besoin de guillemets) par mkdir -p $2/$3, c'est plus efficace.
 
 
voici mon erreur:

www.mailbigfile.com...


Si jai bien compri, tu penses que je devrais passer en parametre les chemins absolus, cad le chemin entier au lieu de " ./ " ?
 
 
Gné ?
Elle est bizarre ton erreur, tu as bien un fichier /bin/bash ? Oui ?
 
 
 
BZValoche a écrit:
Gné ?
Elle est bizarre ton erreur, tu as bien un fichier /bin/bash ? Oui ?
la première ligne ne me semble pas correct, si je m'en refere à : www.graoulug.org...
 
 
la premiere ligne, #!/bin/bash (sur le script original c bien un / et pas \ avant le bin), est bel et bien correcte!
 
 
Oui elle est correcte, on le voit sur son screenshot.
 
 
 
9 messages
ok
 
Vous devez être connecté pour écrire un message !
 

 Sujets Similaires:


 
Clubic.com
 
Achetez-facile.com
 
Jeuxvideo.fr
 
neteco.com
 
mobinaute.com