Commit acc7f289 authored by Ahmad Nemati's avatar Ahmad Nemati

git pu

parent 329107a6
...@@ -15,6 +15,7 @@ async function run() { ...@@ -15,6 +15,7 @@ async function run() {
let lastFile = await fs.readFileSync(path + files[i], 'utf8') let lastFile = await fs.readFileSync(path + files[i], 'utf8')
let stats = await fs.statSync(path + files[i])
lastFile = lastFile.split('\n') lastFile = lastFile.split('\n')
// console.log(lastFile[lastFile.length - 2]) // console.log(lastFile[lastFile.length - 2])
...@@ -23,11 +24,11 @@ async function run() { ...@@ -23,11 +24,11 @@ async function run() {
let vars = ai.run(data) let vars = ai.run(data)
datas.push({name: files[i], vars: vars}) datas.push({name: files[i],size:stats.size, vars: vars})
} }
// console.log(datas) // console.log(datas)
watcher() checker()
} }
...@@ -57,15 +58,44 @@ function grabData(data) { ...@@ -57,15 +58,44 @@ function grabData(data) {
} }
function watcher() { // function watcher() {
watch(path, {filter: /\.csv$/}, function (evt, name) { // watch(path, {filter: /\.csv$/}, function (evt, name) {
name=name.split('\\') // name=name.split('\\')
name=name[name.length-1] // name=name[name.length-1]
console.log('%s changed.', name); // console.log('%s changed.', name);
if (name.includes('Lp')) // if (name.includes('Lp'))
updateVars(name) // updateVars(name)
//
// });
// }
async function checker()
{
let arr=[]
let files = await fs.readdirSync(path)
for (let i = 0; i < files.length; i++) {
if (!files[i].includes('Lp'))
continue
arr.push(make(files[i]))
}
await Promise.all(arr)
await sleep(50)
return checker()
}
async function make(name)
{
let stats = await fs.statSync(path+name)
let size=getSizeFromName(name)
if (size !==stats.size)
{
console.log(name +' changes')
updateSizeFromName(name,stats.size)
await updateVars(name)
}
});
} }
...@@ -89,11 +119,25 @@ function getVarsFromName(name) { ...@@ -89,11 +119,25 @@ function getVarsFromName(name) {
return datas[i].vars return datas[i].vars
} }
function getSizeFromName(name) {
for (let i = 0; i < datas.length; i++)
if (datas[i].name === name)
return datas[i].size
}
function updateVarsFromName(name, vars) { function updateVarsFromName(name, vars) {
for (let i = 0; i < datas.length; i++) for (let i = 0; i < datas.length; i++)
if (datas[i].name === name) if (datas[i].name === name)
datas[i].vars = vars datas[i].vars = vars
} }
function updateSizeFromName(name, size) {
for (let i = 0; i < datas.length; i++)
if (datas[i].name === name)
datas[i].size = size
}
async function sleep(millis) {
return new Promise(resolve => setTimeout(resolve, millis));
}
let fs=require('fs')
let size=0
run()
console.log(run()) async function run()
{
let arr=[]
arr.push(make('test.txt'))
await Promise.all(arr)
await sleep(50)
return run()
}
function run() async function make(name)
{ {
let a=0 let stats = await fs.statSync(name)
let b=1 if (size ===0)
return {a,b} {
size=stats.size
return
}
if (size !==stats.size)
{
console.log('file changes')
size=stats.size
}
}
async function sleep(millis) {
return new Promise(resolve => setTimeout(resolve, millis));
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment