Skip to main content

icanhasfile is a Python module that helps you locate and operate on files using glob searches.

installashun

Run the following command to install icanhasfile:

$ pip install --pre icanhasfile

usage

To get the help dialog, run one of the following commands:

$ icanhasfile --help
$ icanhasfile -h
$ icanhasfile -?

The general command syntax is below. For a list of options, see the help dialog. In the first form, you provide an explicit path to search; in the second, the search is executed in the current directory.

$ icanhasfile [options] <path> <filepattern>
$ icanhasfile [options] <filepattern>

examplez

As an example, let’s say we have the following directory structure:

+-- pom.xml
+-- LICENSE.txt
|
+-- dir1/
|   |
|   \-- pom.xml
|
+-- dir2/
|   |
|   +-- assembly.xml
|   +-- pom.xml
|   \-- version.txt
|
+-- dir3/
    |
    \-- context.xml

If you are searching for pom.xml and want to give the absolute path to the top-level directory, issue the command below. You will be prompted to choose from three matching files:

$ icanhasfile /path/to/top-level/dir pom.xml
[0] pom.xml
[1] dir1/pom.xml
[2] dir2/pom.xml
Choose a number (q to quit):

If you are already in the top-level directory and are searching for pom.xml, issue the command below. You will be prompted to choose from three matching files:

$ icanhasfile pom.xml
[0] pom.xml
[1] dir1/pom.xml
[2] dir2/pom.xml
Choose a number (q to quit):

If you are already in the top-level directory and are searching for all xml files, issue the command below. You will be prompted to choose from five matching files:

$ icanhasfile '*.xml'
[0] pom.xml
[1] dir1/pom.xml
[2] dir2/assembly.xml
[3] dir2/pom.xml
[4] dir3/context.xml
Choose a number (q to quit):

By default, the selected file will be opened using your $EDITOR. However, you can also provide a –command option to use a different command on your path. In the example below, we will just cat out the file. Also, as it is run in the icanhasfile source directory and there is only a single matching file, the file is cat’d without asking the user to choose from multiple matching files:

$ icanhasfile.py --command cat . MANIFEST.in
include LICENSE.txt
include README.rst

Metadata

Release files for icanhasfile 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for icanhasfile 0.1.0
File Size Uploaded Provenance Actions
icanhasfile-0.1.0.tar.gz 4.8 kB Without provenance Details for icanhasfile-0.1.0.tar.gz

Release files / icanhasfile-0.1.0.tar.gz

Download URL icanhasfile-0.1.0.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
65053e816d7955287bdb90b5fc524607367089ca45ef70d7fbf4106a2faa9ad2
BLAKE2b-256 checksum
How to use checksums
be50d0dc621b40a9995bae376ced71e116700cc27bfdb5ac4157f23c205cfb56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for icanhasfile 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page