Unix/Linux/POSIX typically allow almost any byte in a filename, but this flexibility is the source of many problems and vulnerabilities.
This problem is described in "Fixing Unix/Linux/POSIX Filenames: Control Characters (such as Newline), Leading Dashes, and Other Problems" (http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html). Ways of writing shell programs to work around this are discussed in "Filenames and Pathnames in Shell: How to do it correctly" (http://www.dwheeler.com/essays/filenames-in-shell.html). One approach, which does not have some of the problems of other approaches, is to use encodef... which is this package.
License
MIT LicenseFollow encodef
Other Useful Business Software
$300 Free Credits for Your Google Cloud Projects
Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
Rate This Project
Login To Rate This Project
User Reviews
-
dwheeler has a well reasoned, competently engineered, and thoroughly tested approach to proofing shell scripts against the vulnerabilities and unfortunate side effects that fundamentally flawed (but evolving) inbuilt methods of handling globing and pathnames enable. His brief essays on this subject are worth careful study and frequent review.