Comment effacer un fichier invible

Baroque

Membre confirmé
12 Mai 2005
27
0
75
Bonjour !
Quelqu'un peut-il m'aider à écrire un petit script pour effacer un fichier invisible ?
J'ai essayé avec "do shell script rm …", mais je n'arrive pas à le faire marcher. Je suis débutant en Unix.
Merci !
 
Je comprends pas le problème ?
Pour effacer n'importe quel fichier avec un shell, tu fais "rm tonfichier".
 
Fais gaffe quand même en manipulant la commande rm (si comme tu le dis tu n'es pas spécialiste en UNIX).... un défaut de syntaxe dans la commande passée par ton script et tu effaces tout ton disque dur!
 
Je pense qu'il veut automatiser la chose.....
Dans ce cas, je te conseille plutot un script shell comme le suggère molgow :D
Si tu nous en disais plus, on pourrait t'aider, mais là, c'est un peu "limite" comme question :)
 
Merci beaucoup de vous intéresser à mon petit problème et excusez-moi d'avoir été imprécis !!
Voici mon script dans son état actuel :

try
do shell script "rm'/Macintosh HD/Utilisateurs/Partagé/monfichier.dat'"
end try
tell application "Finder"
empty the trash
end tell

Mais quand je rend mon fichier visible avec Onyx, il est toujours là.
 
Baroque a dit:
Merci beaucoup de vous intéresser à mon petit problème et excusez-moi d'avoir été imprécis !!
Voici mon script dans son état actuel :

try
do shell script "rm'/Macintosh HD/Utilisateurs/Partagé/monfichier.dat'"
end try
tell application "Finder"
empty the trash
end tell

Mais quand je rend mon fichier visible avec Onyx, il est toujours là.

Il manque un espace entre "rm" et ton fichier non ?
Et puis, pourquoi ne pas utiliser le finder pour effacer le fichier, il ne veut pas pour un fichier invisible ?
Autre chose, avec "rm" ton fichier est directement et irrémédiablement effacé, donc même pas besoin de vider la corbeille ;)
 
Baroque a dit:
Merci beaucoup de vous intéresser à mon petit problème et excusez-moi d'avoir été imprécis !!
Voici mon script dans son état actuel :

try
do shell script "rm'/Macintosh HD/Utilisateurs/Partagé/monfichier.dat'"
end try
tell application "Finder"
empty the trash
end tell

Mais quand je rend mon fichier visible avec Onyx, il est toujours là.
En effet, je ne connais pas vraiment l'apple Script, mais plus la ligne de commande, et j'écrirais plutot cela :
Bloc de code:
     do shell script "rm '/Macintosh\ HD/Users/Shared/monfichier.dat'"
à vérifier au niveau des majuscules pour Shared entre autre et l'espace dans la ligne de commande pour Macintosh HD pourrais pauser problème (il faut ajouter un \)
 
r e m y a dit:
Fais gaffe quand même en manipulant la commande rm (si comme tu le dis tu n'es pas spécialiste en UNIX).... un défaut de syntaxe dans la commande passée par ton script et tu effaces tout ton disque dur!
A moins d'être en "root" et de tapper une commande bien spécifique y'a pas trop de danger quand même ...
Juste éviter ce genre de commande "rm -r -f /" :D :D
 
Baroque a dit:
Merci beaucoup de vous intéresser à mon petit problème et excusez-moi d'avoir été imprécis !!
Voici mon script dans son état actuel :

try
do shell script "rm'/Macintosh HD/Utilisateurs/Partagé/monfichier.dat'"
end try
tell application "Finder"
empty the trash
end tell

Mais quand je rend mon fichier visible avec Onyx, il est toujours là.

Les dossiers /Utilisateurs; /Partagé n'existent pas. C'est juste une illusion d'optique!
Ils s'appellent /Users et /Shared (c'est le finder qui les affichent sous un autre nom. POur t'en convaincre, et voir leur VRAI nom, fais un Pomme-I dessus)
 
J'ai avancé, grâce à vous, merci ! MAIS la vie n'est pas simple…
J'arrive à supprimer mon fichier invisible à partir du terminal en tapant ces deux commandes :

cd /Users/Shared
rm .uhfhvvPdufk45338.dat

Et ça marche ! Mais quand j'essaye d'en faire un script :

try
do shell script "cd '/Users/Shared'"
end try
try
do shell script "rm '.uhfhvvPdufk45338.dat'"
end try

Là, ça ne marche plus. Qu'est-ce qui m'échappe ??
 
Oui, mais je ne voudrais pas avoir à passer par le terminal. Le fichier invisible dont je veux me débarrasser est créé automatiquement par une demo d'application chaque fois qu'elle se lance. Je veux donc faire un script qui lance l'appli et supprime le fichier. Pas besoin d'en dire plus. Je sais, c'est mal…
 
Baroque a dit:
try
do shell script "cd '/Users/Shared'"
end try
try
do shell script "rm '.uhfhvvPdufk45338.dat'"
end try

Fais plutôt quelque chose comme ça :

try
do shell script "rm /Users/Shared/*.dat"
end try


De cette manière, ça effacera tous les .dat dans le répertoire Shared.
 
Bon, ça ne marche pas. On n'a pas que des satisfactions avec Unix… Je crois que je vais m'en tenir au Basic !

Merci quand même, c'est sympa.
 
essaie ça:

set filename to ".15Fgdt25.dat"
do shell script "rm " & filename user name "ton_user" password "ton_mot_de_passe" with administrator privileges
 
Merci !

J'ai rentré ça :

try
set filename to ".hvwxduvPdufk45338.dat"
do shell script "rm " & filename user name "Administrateur" password "2181" with administrator privileges
end try

A la compil il s'arrête sur user name et sort le message
"fin de ligne, etc prévu, mais trouvé propriété."

Est-ce une erreur de syntaxe ?
 
J'ai trouvé tout seul les erreurs de syntaxe. Le script compilé donne ça :

try
set filename to ".hvwxduvPdufk45338.dat"
do shell script "'rm ' & filename user name 'Administrateur' password '2181' with administrator privileges"
end try

Mais il ne supprime toujours pas this fucking file !!!!!!
 
C'est peut-être le point en début de nom de fichier qui passe mal.... essaie de créer un fichier bidon dans ton dossier "Partagé" (un bidon.txt par exemple) et essaie ton script avec
set filename to "bidon.txt"
 
Baroque a dit:
Non, ça ne marche toujours pas. Ne serait-ce pas un pb de chemin d'accès ?

OUps j'ai oublié de remettre la ligne do shell script "cd '/Users/Shared'"