CONTENIDO

  • NOMBRE
  • SINOPSIS
  • DESCRIPCIÓN
    • getcwd y amigos
    • abs_path y amigos
    • $ ENV PWD
  • NOTAS
  • AUTOR
  • DERECHOS DE AUTOR
  • VER TAMBIÉN

NOMBRE

Cwd: obtiene el nombre de ruta del directorio de trabajo actual

SINOPSIS

use Cwd;my$dir= getcwd;use Cwd 'abs_path';my$abs_path= abs_path($file);

DESCRIPCIÓN

Este módulo proporciona funciones para determinar la ruta del directorio de trabajo actual. Se recomienda que getcwd (u otra función * cwd ()) se utilice en todos código para garantizar la portabilidad.

De forma predeterminada, exporta las funciones cwd (), getcwd (), fastcwd () y fastgetcwd () (y, en Win32, getdcwd ()) al espacio de nombres de la persona que llama.

getcwd y amigos

Cada una de estas funciones se llama sin argumentos y devuelve la ruta absoluta del directorio de trabajo actual.

getcwd
my$cwd= getcwd();

Devuelve el directorio de trabajo actual. En devoluciones de error undef, con $! establecido para indicar el error.

Expone la función POSIX getcwd (3) o la vuelve a implementar si no está disponible.

cwd
my$cwd= cwd();

El cwd () es la forma más natural para la arquitectura actual. Para la mayoría de los sistemas, es idéntico a `pwd` (pero sin el terminador de línea final).

fastcwd
my$cwd= fastcwd();

Una versión más peligrosa de getcwd (), pero potencialmente más rápida.

Es posible que le haga chdir () fuera de un directorio en el que no pueda volver a entrar con chdir (). Si fastcwd encuentra un problema, devolverá undef pero probablemente lo dejará en un directorio diferente. Para una medida de seguridad adicional, si todo parece haber funcionado, la función fastcwd () verificará que lo deja en el mismo directorio en el que comenzó. Si ha cambiado, lo hará die con el mensaje “Ruta de directorio inestable, el directorio actual cambió inesperadamente”. Eso nunca debería suceder.

fastgetcwd
my$cwd= fastgetcwd();

La función fastgetcwd () se proporciona como sinónimo de cwd ().

getdcwd
my$cwd= getdcwd();my$cwd= getdcwd('C:');

La función getdcwd () también se proporciona en Win32 para obtener el directorio de trabajo actual en la unidad especificada, ya que Windows mantiene un directorio de trabajo actual separado para cada unidad. Si no se especifica ninguna unidad, se asume la unidad actual.

Esta función simplemente llama a la función _getdcwd () de la biblioteca C de Microsoft.

abs_path y amigos

Estas funciones se exportan solo bajo pedido. Cada uno toma un solo argumento y devuelve el nombre de ruta absoluto. Si no se da ningún argumento, usarán el directorio de trabajo actual.

abs_path
my$abs_path= abs_path($file);

Utiliza el mismo algoritmo que getcwd (). Los enlaces simbólicos y los componentes de ruta relativa (“.” Y “..”) se resuelven para devolver el nombre de ruta canónico, al igual que realpath (3). En devoluciones de error undef, con $! establecido para indicar el error.

camino real
my$abs_path= realpath($file);

Un sinónimo de abs_path ().

fast_abs_path
my$abs_path= fast_abs_path($file);

Una versión más peligrosa, pero potencialmente más rápida de abs_path.

$ ENV PWD

Si solicita anular su función incorporada chdir (),

use Cwd qw(chdir);

entonces su variable de entorno PWD se mantendrá actualizada. Tenga en cuenta que solo se mantendrá actualizado si todos los paquetes que usan chdir lo importan desde Cwd.

NOTAS

  • Dado que los separadores de ruta son diferentes en algunos sistemas operativos (‘/’ en Unix, ‘:’ en MacPerl, etc.), le recomendamos que utilice los módulos File :: Spec siempre que la portabilidad sea una preocupación.

  • De hecho, en Mac OS, getcwd(), fastgetcwd() y fastcwd() todas las funciones son alias para el cwd() función, que, en Mac OS, llama `pwd`. Asimismo, el abs_path() función es un alias para fast_abs_path().

AUTOR

Originalmente por los perl5-porters.

Mantenido por Ken Williams <[email protected]>

DERECHOS DE AUTOR

Copyright (c) 2004 de Perl 5 Porters. Reservados todos los derechos.

Este programa es software gratuito; puede redistribuirlo y / o modificarlo en los mismos términos que el propio Perl.

Partes del código C de esta biblioteca tienen copyright (c) 1994 de los Regentes de la Universidad de California. Reservados todos los derechos. La licencia de este código es compatible con la licencia del resto de la distribución; consulte el código fuente en Cwd.xs para los detalles.

VER TAMBIÉN

Archivo :: chdir