Node.js Nodejs获取文件扩展名
我有一个包含图像的文件夹,它们可以有不同的格式,但名称始终是唯一的。如果我知道文件名而不知道扩展名(例如Node.js Nodejs获取文件扩展名,node.js,file-extension,Node.js,File Extension,我有一个包含图像的文件夹,它们可以有不同的格式,但名称始终是唯一的。如果我知道文件名而不知道扩展名(例如index和notindex.html),是否有办法获取文件扩展名?我可以检查每个扩展名是否都存在该文件,但这对我来说似乎是一个糟糕的解决方案 示例: 我知道有一个名为PIC的图像,但我不知道扩展名(可以是“.png”或“.jpg”等),因此我不能使用file命令。如果您运行基于Unix的系统,这可能是一个解决方法 var sys=require('util')) var exec=requ
index
和notindex.html
),是否有办法获取文件扩展名?我可以检查每个扩展名是否都存在该文件,但这对我来说似乎是一个糟糕的解决方案
示例:
我知道有一个名为
PIC
的图像,但我不知道扩展名(可以是“.png”或“.jpg”等),因此我不能使用file命令。如果您运行基于Unix的系统,这可能是一个解决方法
var sys=require('util'))
var exec=require('child_process')。exec;
函数puts(错误、标准输出、标准输出){
console.log(标准输出)
}
//这是您应该获取路径/文件名的地方
var filename=“login”;
//执行unix命令“文件”
exec(“文件”+文件名,puts)代码>var path=require('path'))
path.extname('index.html')
//返回
“.html”
以下是参考答案
更新:
npm安装--保存文件扩展名
允许您指定文件名,然后它将返回扩展名我知道我来晚了,但是您可以在基于unix的系统中使用grep
命令
iels|grep PIC
。它首先给出工作目录的目录列表,然后从目录列表的输出中搜索短语PIC并打印出来。(所以唯一要打印的是文件名)
在Windows中,使用dir PIC.*/b
您可以使用child\u进程
执行这些命令,如其他答案所示我想删除标志的可能重复项,但不幸的是无法。如果一个国防部可以拒绝,那将是非常感谢你的回答。我想我问的问题不够具体,所以我更新了我的问题。你能使用dir或ls命令吗?我的意思是,如果你能使用操作系统命令,答案中截取的代码可以适应操作系统命令(例如ls index*或dir index*)。添加-b和--extension以获得可能的扩展名列表..在没有扩展名的jpg上测试给了我jpeg/jpg/jpe/jfif
,如我的问题中所述,我不知道文件的扩展名。我只知道有一个名为'index.SOMETHING'的文件。$npm安装--保存文件扩展名这是文档