He encontrado muchas bibliotecas para ayudar con el análisis de argumentos de línea de comandos, pero ninguna de ellas parece ocuparse de manejar nombres de archivo. Si recibo algo como "../foo" en la línea de comandos, ¿cómo puedo averiguar la ruta completa al archivo?¿Cómo obtengo la ruta completa para un argumento de línea de comandos de nombre de archivo?
Respuesta
POSIX tiene realpath()
.
#include <stdlib.h>
char *realpath(const char *filename, char *resolvedname);
DESCRIPCIÓN
El realpath() función de deriva, de la ruta a la que apunta nombre, una ruta absoluta que da nombre al mismo archivo, cuya resolución no implica". '' .. ", o enlaces simbólicos. El nombre de ruta generado se almacena, hasta un máximo de {PATH_MAX} bytes, en el búfer al que apunta resolvedname.
Gracias por la edición, Jonathan; y especialmente para el resumen. – pmg
Se podría utilizar para obtener el boost::filesystem
absolute path
de un archivo, desde su relative path
:
namespace fs = boost::filesystem;
fs::path p("test.txt");
fs::path full_p = fs::complete(p); // complete == absolute
std::cout << "The absolute path: " << full_p;
fs :: absolute (p) en V3 – KindDragon
En los scripts de shell, el comando "readlink -f" tiene la funcionalidad de realpath().
- 1. ¿Cómo obtengo un nombre de archivo de una ruta completa con PHP?
- 2. Argumento de la línea de comandos de Winform que devuelve el nombre del archivo ejecutable
- 3. ¿Cómo expandir un enlace simbólico a la ruta completa de un nombre de archivo en vim?
- 4. ¿Cómo obtengo la ruta virtual completa de una aplicación ASP.NET?
- 5. ¿Cómo obtengo el directorio de la ruta completa de un archivo?
- 6. creación de nombre de archivo de ruta completa en python,
- 7. ¿Cómo ver la ruta completa de un archivo en GDB?
- 8. Pasar un nombre de archivo como un argumento de línea de comando a la secuencia de comandos Octave de GNU
- 9. ¿Cómo obtengo la línea de comandos que inició el proceso?
- 10. Obtener la ruta completa sin el nombre de archivo de la ruta que incluye el nombre de archivo
- 11. Ruta completa desde la entrada de archivo usando jQuery
- 12. Cómo obtener la ruta completa desde "../" en la línea de comandos en el script de shell de Linux
- 13. ¿Usar sed para agarrar el nombre de archivo de la ruta completa?
- 14. Obtener el nombre de la carpeta de la ruta completa del archivo
- 15. argumento de línea de comandos GCC pickiness
- 16. eliminar ruta completa, mantenga el nombre de archivo solamente
- 17. ¿Cómo obtengo el nombre de la ruta de RouteData?
- 18. archivo como argumento de la línea de comandos para argparse - mensaje de error si el argumento no es válido
- 19. Haciendo un programa de línea de comandos "pantalla completa"
- 20. ¿Cómo devolver la ruta completa de SaveFileDialog?
- 21. ¿Cómo abrir un archivo PDF en vista de pantalla completa a través de línea de comandos
- 22. Obtener ruta de archivo completa en java
- 23. Buscar nombre de archivo de la ruta de archivo completo
- 24. Parse nombre de archivo de la ruta completa utilizando expresiones regulares en C#
- 25. Bash: obtener el último nombre de directorio/nombre de archivo en un argumento de ruta de archivo
- 26. ruta del archivo como argumento ruta MVC
- 27. Cómo obtener la ruta completa de StreamWriter
- 28. extraer nombre de archivo de la ruta
- 29. Argumento booleano para la secuencia de comandos
- 30. ¿Cómo obtengo el nombre de archivo actual de un documento de Word, sin la extensión o la ruta completa, usando una macro?
¿Por qué crees que necesitas la ruta completa al archivo? Las llamadas de sistema funcionan bien con rutas relativas. –
Creo que el comando 'pwd' te da tu ruta/ubicación actual. Deberías poder calcular el resto ... pero Andrew (comentario anterior) es correcto. –
Mi utilidad genera algunos archivos de texto, así que necesito la ruta completa. La construcción de caminos suena como un dolor, esto ya debe haber sido resuelto 1000 veces. –