Bash 基名修改
Bash Basename Modification
在 bash 中,我正在加载一个文件,例如:
/path/to/dir/filename.ext
现在的想法是使用该文件名和 "extend its' name" 修改后,例如:
some operation /path/to/dir/filename.ext > path/to/dir/filename_extendingfilename.ext;
到目前为止,我已经成功地从另一个已经在此处提出的问题(供参考Extract filename and extension in Bash)调用了文件名:
basename filename .extension
basename /path/to/dir/filename.txt .txt
filename
我遇到的问题是使用“_ extension.ext”创建一个新文件,该文件具有源文件的文件名和扩展区
bash
shell parameter expansion 是这里的一个选项:
f=/path/to/dir/filename.ext
f2=${f%.ext*}"_extendingfilename.ext"
shell 参数扩展在 .ext
的最后一次出现时被截断(即它也可以正确地用于像 /path/to/dir/file.ext.name.ext
这样的文件)
这里有一个重定向的例子:
f=/path/to/dir/filename.ext
someoperation $f > ${f%.ext*}"_extendingfilename.ext"
在 bash 中,我正在加载一个文件,例如:
/path/to/dir/filename.ext
现在的想法是使用该文件名和 "extend its' name" 修改后,例如:
some operation /path/to/dir/filename.ext > path/to/dir/filename_extendingfilename.ext;
到目前为止,我已经成功地从另一个已经在此处提出的问题(供参考Extract filename and extension in Bash)调用了文件名:
basename filename .extension
basename /path/to/dir/filename.txt .txt
filename
我遇到的问题是使用“_ extension.ext”创建一个新文件,该文件具有源文件的文件名和扩展区
bash
shell parameter expansion 是这里的一个选项:
f=/path/to/dir/filename.ext
f2=${f%.ext*}"_extendingfilename.ext"
shell 参数扩展在 .ext
的最后一次出现时被截断(即它也可以正确地用于像 /path/to/dir/file.ext.name.ext
这样的文件)
这里有一个重定向的例子:
f=/path/to/dir/filename.ext
someoperation $f > ${f%.ext*}"_extendingfilename.ext"