Comment ouvrir des fichiers avec un tableau de bord avant sous linux


1

Je dois ouvrir un fichier dont le nom de fichier contient des barres obliques. Je me demande comment je peux faire ça. J'ai effectué une recherche sur Google et je n'arrive pas à trouver un moyen.

Merci


1
Les noms de fichiers sous * nix ne peuvent pas contenir de barres obliques.
Ignacio Vazquez-Abrams

Bienvenue chez SO. quel système d'exploitation utilisez-vous? (vous avez marqué UNIX, mais sous UNIX, les fichiers ne contiennent pas f-slases, il s'agit donc probablement du chemin complet) dans quelle langue voulez-vous l'ouvrir? Certains détails vont accélérer la réponse, en particulier lorsque vous montrez ce que vous avez déjà essayé. et passez un peu de temps à lire le stackoverflow.com/helpcenter
jm666

1
J'utilise Linux mais le fichier que je télécharge provient d'un autre système d'exploitation, c'est pourquoi il y a des barres obliques. J'essaie de décompresser le fichier dans le terminal. Je suis tout à fait sûr que les barres obliques ne sont pas dues au système de répertoire / fichier et qu’il s’agit du nom réel du fichier.
Gnator

1
@ IgnacioVazquez-Abrams Ils le peuvent, car les noms de fichiers ne sont que des flux d'octets et ne sont pas conscients du codage. La restriction est imposée dans la fonction du noyau Unix namei. Il traite quelques valeurs spéciales, dont ASCII 0x2f( /). On pourrait utiliser un encodage (les encodages ne concernent que les programmes au niveau utilisateur, pas les fonctions du noyau) qui traduit /en une autre valeur que 0x2f.
Marco

Réponses:


2

Faire de mon commentaire une réponse potentiellement utile. Essayez de renommer le fichier.

ls -i

Vous donnera le numéro d'inode du fichier. Vous pouvez ensuite utiliser une combinaison de find et mv pour renommer le fichier comme suit:

find . -inum "inode-number-from-ls -i" -exec mv {} "newfilename" \;

Donnez au fichier un nouveau nom de fichier "normal" et vous pourrez continuer.


Bon un! Devrait marcher.
fedorqui

Pourquoi est-ce que ça va marcher? Si findpeut passer un nom valide à mv, ce n'est pas un problème pour un utilisateur de faire de même.
firegurafiku

Car le nom qui trouvera les passes sera correctement codé, contrairement à ce que l'utilisateur taperait sur le terminal.
SBI

-1

Ce doit être un fichier Windows. Vous avez plusieurs façons de résoudre ce problème:

  • Enroulez le nom avec des guillemets: vi "file/name".
  • Utilisez l'onglet pour compléter le nom. Cela vous donnera la bonne façon de l'écrire.
  • Trouvez un motif et utilisez-le *. Si le nom du fichier est file/name, vous pouvez le faire vi fil*et celui-ci sera ouvert (avec d'autres fichiers pouvant avoir le même motif).

Les appels de système de fichiers seront interprétés /comme le séparateur de répertoire, quelle que soit la manière dont il est spécifié sur la ligne de commande.
Ignacio Vazquez-Abrams Le

1
Oui je vois. Néanmoins, l'onglet fabuleux peut fournir un moyen d'y échapper, n'est-ce pas?
fedorqui

1
J'ai essayé les trois méthodes, malheureusement aucune n'a fonctionné. Je me demande si je peux en quelque sorte renommer l'intégralité du fichier sur un programme utilisant Java ou quelque chose qui n'est pas aussi sensible au codage.
Gnator

Qu'en est- il mv file* newname?
fedorqui

Malheureusement cela n'a pas fonctionné aussi. Je suppose que déplacer le fichier corrompt le fichier car il s’agit d’un fichier zip à l’origine.
Gnator
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.