Pages : 1
#1 Le 09/08/2013, à 22:28
- bbenn
nom de fichier linux
Salut,
est-ce normal que je ne puisse pas créer un fichier dont le nom comporte une parenthèse sur un serveur Ubuntu?
root@serveur:/home/abc1# touch toto()toto.jpg
-bash: syntax error near unexpected token `('
si par ailleurs j'envoie en ftp un fichier qui contient une parenthèse le serveur l'accepte pourtant
la preuve:
root@serveur:/home/abc1# ll
total 328
drwxrwxrwx 2 abc1 abc1 28672 Aug 9 22:25 ./
drwxr-xr-x 5 root root 4096 Aug 4 09:44 ../
-rw-r--r-- 1 abc1 abc1 28886 Aug 9 22:25 0F8()_1_20130809212457_0.jpg (envoyé en ftp)
Dernière modification par bbenn (Le 09/08/2013, à 22:29)
Hors ligne
#2 Le 09/08/2013, à 22:34
- Shanx
Re : nom de fichier linux
Salut
Il suffit d’échapper les caractères spéciaux (en l’occurrence les parenthèses) à l’aide d’un antislash :
touch toto\(\)toto
Par ailleurs, fait attention avec ton usage du mode administrateur. Il est dangereux de se logger en root, une bêtise est vite arrivée (surtout que tu sembles avoir du mal avec la ligne de commande).
Par ailleurs, une simple recherche google te donnait les résultats, penses-y la prochaine fois.
Et j’ai déplacé ton fil dans la section adéquate
Dernière modification par Shanx (Le 09/08/2013, à 22:41)
Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied
Hors ligne
#3 Le 10/08/2013, à 07:39
- tiramiseb
Re : nom de fichier linux
Salut,
Pour préciser un peu, que tu comprennes bien : il faut échapper les parenthèses car elles sont interprétées par le shell. Donc dans un shell (ou dans un script shell), il faut en effet échapper les parenthèses.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#4 Le 10/08/2013, à 22:56
- bbenn
Re : nom de fichier linux
Salut,
Pour préciser un peu, que tu comprennes bien : il faut échapper les parenthèses car elles sont interprétées par le shell. Donc dans un shell (ou dans un script shell), il faut en effet échapper les parenthèses.
A la base mon problème vient d'un script php
je ne parviens pas a afficher les images et j'en étais venu à me dire que c'est à cause des () dans le nom du fichier.
En fait le problème est tout autre mais du coup ça devient plutôt un problème de config apache
(en 2 mots dans mon script php je tente d'afficher des images qui se trouvent dans /home/user alors que le documentroot est /var/www)
je vais peut être tenter un lien symbolique de /home/user dans /var/www
Merci en tout cas
Hors ligne
Pages : 1