#1 Le 16/05/2008, à 10:02
- fanfantasy7
[RESOLU]récuperer le nom du fichier
Bonjour,
quand je suis dans la corbeille trash:///
et que je lance mon script
zenity --info --title="NAUTILUS_SCRIPT_SELECTED_URIS" --text="$NAUTILUS_SCRIPT_SELECTED_URIS"
NAUTILUS_SCRIPT_SELECTED_URIS me donne l'url quand je suis dans trash:///
de type trash:///_<nom_du_fichier>
comment puis-je récupérer seulement mon nom de fichier avec sed ou autre chose
Dernière modification par fanfantasy7 (Le 16/05/2008, à 11:15)
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne
#2 Le 16/05/2008, à 10:15
- wblitz
Re : [RESOLU]récuperer le nom du fichier
$filename="`echo $NAUTILUS_SCRIPT_SELECTED_URIS | sed 's@^trash:///_\(.*\)@\1@'`"
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#3 Le 16/05/2008, à 10:49
- fanfantasy7
Re : [RESOLU]récuperer le nom du fichier
voici mon script
#!/bin/sh
FILE_NAME="`echo $NAUTILUS_SCRIPT_SELECTED_URIS | sed 's@^trash:///_\(.*\)@\1@'`"
zenity --info --title="NAUTILUS_SCRIPT_SELECTED_URIS" --text="$FILE_NAME"
zenity --info --title="file name trash info" --text="/home/$USER/.local/share/Trash/info/"$FILE_NAME".trashinfo"
source /home/$USER/.local/share/Trash/info/"$FILE_NAME".trashinfo
zenity --info --title="Path" --text="$Path"
mv /home/$USER/.local/share/Trash/files/"$FILE_NAME" $Path
rm /home/$USER/.local/share/Trash/info/"$FILE_NAME".trashinfo
quand j'éxecute le script ligne par ligne dans une console ca marche
mais quand je lance le script $Path est vide
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne
#4 Le 16/05/2008, à 11:04
- wblitz
Re : [RESOLU]récuperer le nom du fichier
remplace la ligne :
source /home/$USER/.local/share/Trash/info/"$FILE_NAME".trashinfo
par ceci :
Path=`grep "^Path=" /home/$USER/.local/share/Trash/info/"$FILE_NAME".trashinfo | awk ' BEGIN {FS="="; } { print $2 } '`
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#5 Le 16/05/2008, à 11:15
- fanfantasy7
Re : [RESOLU]récuperer le nom du fichier
c'est cool merci beaucoup
ça marche
c'est la commande source qui devais pas aimer le fichier .trashinfo
je ne connais pas awk BEGIN
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne
#6 Le 16/05/2008, à 12:42
- Alain.g
Re : [RESOLU]récuperer le nom du fichier
| sed 's@^trash:///_\(.*\)@\1@'`"
L'utilisation des références arrières me semble inutiles ici, sed 's@^trash:///_@@' reviendrait au même.
Plutôt que de passer pas sed, on peut faire plus rapidement en bash : ${NAUTILUS_SCRIPT_SELECTED_URIS#*_}
Xubuntu Karmic !
Hors ligne
#7 Le 16/05/2008, à 14:20
- fanfantasy7
Re : [RESOLU]récuperer le nom du fichier
désolé mais j'ai pas tou suivi
tu remplacerai
FILE_NAME="`echo $NAUTILUS_SCRIPT_SELECTED_URIS | sed 's@^trash:///_\(.*\)@\1@'`"
par
FILE_NAME="`echo $NAUTILUS_SCRIPT_SELECTED_URIS | ${NAUTILUS_SCRIPT_SELECTED_URIS#*_}
???
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne
#8 Le 16/05/2008, à 16:28
- Alain.g
Re : [RESOLU]récuperer le nom du fichier
non :
FILE_NAME="${NAUTILUS_SCRIPT_SELECTED_URIS#*_}"
Xubuntu Karmic !
Hors ligne
#9 Le 16/05/2008, à 16:40
- fanfantasy7
Re : [RESOLU]récuperer le nom du fichier
désolé mais ca marche plus
quand je remplace
FILE_NAME="`echo $NAUTILUS_SCRIPT_SELECTED_URIS | sed 's@^trash:///_\(.*\)@\1@'`"
par
FILE_NAME="${NAUTILUS_SCRIPT_SELECTED_URIS#*_}"
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne
#10 Le 16/05/2008, à 18:11
- Alain.g
Re : [RESOLU]récuperer le nom du fichier
N'utilisant pas Nautilus, je ne connais pas vraiment, mais apparemment les $NAUTILUS_SC... donnent les URIs des fichiers sélectionnés séparés par des sauts de ligne
Avec le code que je t'ai donné, le saut de ligne final n'est pas enlevé (contrairement à sed), du coup quand on ajoute ".info" à FILE_NAME, on obtient en fait :
"fichier.txt
.info"
Ce qui forcément ne va pas.
Par contre pour sed tu peux enlever \(.*\)@\1@ en remplaçant par @@, ça ne devrait rien changer pour le coup
Xubuntu Karmic !
Hors ligne
#11 Le 16/05/2008, à 22:08
- fanfantasy7
Re : [RESOLU]récuperer le nom du fichier
mais il n'y a pas pas de saut de ligne si je sélectionne qu'un fichier non ?
Fanfantasy7
pc fixe : Linux Mint
pc portable : Ubuntu LTS
Hors ligne