如何使用通配符fs.existsSync或statSync或readFileSync内
我下面的规格点击下载按钮,然后验证下载。在节目中唯一的问题是,你需要预先知道文件的名称。
相反我希望它来寻找像*.mp4
我已经阅读了关于glob
但不知道如何实现它的目录外卡。
谁能告诉我怎么把它或另一种方式,融入到下面的代码? -
element(by.css('.download-recording .pgi-button-wrapper')).click();
browser.driver.wait(function() {
return fs.existsSync('/home/user,/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4')}, 8000).then(function() {
console.log("File Downloaded");
console.log(fs.statSync('/home/user/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4').size);
console.log(fs.readFileSync('/home/user/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4').length);
});
回答如下:
你可以阅读整个目录
fs.readdirSync
然后只需过滤结果的接收到的阵列,并生成绝对路径:
let fs = require('fs')
let folderfiles = fs.readdirSync('./')
console.log(folderfiles)
let mp4filePaths = folderfiles
.filter(file=> file.endsWith('.mp4'))
.map(file=> path.resolve(__dirname, file))
console.log(mp4filePaths)
如何使用通配符fs.existsSync或statSync或readFileSync内
我下面的规格点击下载按钮,然后验证下载。在节目中唯一的问题是,你需要预先知道文件的名称。
相反我希望它来寻找像*.mp4
我已经阅读了关于glob
但不知道如何实现它的目录外卡。
谁能告诉我怎么把它或另一种方式,融入到下面的代码? -
element(by.css('.download-recording .pgi-button-wrapper')).click();
browser.driver.wait(function() {
return fs.existsSync('/home/user,/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4')}, 8000).then(function() {
console.log("File Downloaded");
console.log(fs.statSync('/home/user/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4').size);
console.log(fs.readFileSync('/home/user/Downloads/Recordings/ProtractorMeeting-2019-01-24T21_56_24.000Z.mp4').length);
});
回答如下:
你可以阅读整个目录
fs.readdirSync
然后只需过滤结果的接收到的阵列,并生成绝对路径:
let fs = require('fs')
let folderfiles = fs.readdirSync('./')
console.log(folderfiles)
let mp4filePaths = folderfiles
.filter(file=> file.endsWith('.mp4'))
.map(file=> path.resolve(__dirname, file))
console.log(mp4filePaths)