{"name":"F2: A Powerful Command-Line Tool for Batch Renaming Files and Directories","description":"F2 is a cross-platform command-line tool for batch renaming files and directories. Written in Go, it offers a safe and efficient way to manage file names with features like dry run, variable support, and undo functionality. This makes it an invaluable utility for developers and power users alike.","github":"https://github.com/ayoisaiah/f2","url":"https://osrepos.com/repo/ayoisaiah-f2","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/ayoisaiah-f2","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/ayoisaiah-f2.md","json":"https://osrepos.com/repo/ayoisaiah-f2.json","topics":["batch-rename","bulk-rename-files","golang","command-line-tool","file-management","linux","macos","windows"],"keywords":["batch-rename","bulk-rename-files","golang","command-line-tool","file-management","linux","macos","windows"],"stars":null,"summary":"F2 is a cross-platform command-line tool for batch renaming files and directories. Written in Go, it offers a safe and efficient way to manage file names with features like dry run, variable support, and undo functionality. This makes it an invaluable utility for developers and power users alike.","content":"## Introdução\n\nF2 is a cross-platform command-line tool for batch renaming files and directories quickly and safely. Written in Go, it provides a robust solution for managing file names across Linux, macOS, and Windows. This tool stands out with its focus on safety, performance, and user-friendly features.\n\n## Instalação\n\nF2 can be installed in several ways. If you are a Go developer, you can use `go install` (requires v1.23 or later):\n\nbash\ngo install github.com/ayoisaiah/f2/v2/cmd/f2@latest\n\n\nOther installation methods, including pre-compiled binaries for various operating systems, are available on the [official documentation](https://f2.freshman.tech/guide/getting-started.html) or the [releases page](https://github.com/ayoisaiah/f2/releases).\n\n## Exemplos\n\nF2 offers comprehensive renaming capabilities, from simple string replacements to complex regular expressions. It supports using file attributes, such as EXIF data for images or ID3 tags for audio files, to provide maximum flexibility. The tool defaults to a dry run, allowing you to review changes before applying them, and includes an undo functionality for easy correction of mistakes.\n\n## Porquê usar\n\nF2 distinguishes itself from other renaming tools with several key advantages:\n\n*   **Dry Run by Default**: Review renaming changes before proceeding.\n*   **Variable Support**: Utilize file attributes like EXIF or ID3 tags for flexible renaming.\n*   **Safety First**: Ensures every renaming operation is conflict-free and error-proof.\n*   **High Performance**: Extremely fast and efficient, even with thousands of files.\n*   **Undo Functionality**: Easily revert any renaming operation to correct mistakes.\n*   **Extensive Documentation**: Clear, practical examples to help users make the most of its features.\n\n## Links\n\nHere are some quick links to F2's documentation and resources:\n\n*   [Installation Guide](https://f2.freshman.tech/guide/getting-started.html)\n*   [Getting Started Tutorial](https://f2.freshman.tech/guide/tutorial.html)\n*   [Real-world Example](https://f2.freshman.tech/guide/organizing-image-library.html)\n*   [Built-in Variables](https://f2.freshman.tech/guide/how-variables-work.html)\n*   [File Pair Renaming](https://f2.freshman.tech/guide/pair-renaming.html)\n*   [Renaming with a CSV File](https://f2.freshman.tech/guide/csv-renaming.html)\n*   [Sorting](https://f2.freshman.tech/guide/sorting.html)\n*   [Resolving Conflicts](https://f2.freshman.tech/guide/conflict-detection.html)\n*   [Undoing Renaming Mistakes](https://f2.freshman.tech/guide/undoing-mistakes.html)\n*   [CHANGELOG](https://f2.freshman.tech/reference/changelog.html)","metrics":{"detailViews":3,"githubClicks":6},"dates":{"published":null,"modified":"2026-02-04T00:00:24.000Z"}}