是否可以在节点js中编写相同的shell脚本文件
cd / home / webapps / project1 / folder1 for f in * .csv 做 cp -v $ f /home/webapps/project1/folder2/${f%.csv}$(date +%m%d%y).csv 完成
我的服务器中有一个包含一些文件的文件夹。这些都是自动化的,这意味着我们每天都会自动获取新文件,这将覆盖旧文件。所以想要备份这些数据。如何通过在复制时使用当前日期重命名文件,将所有这些文件复制到另一个文件夹中。
答案 0 :(得分:0)
以下是使用fs
var fs = require('fs'),
input_path = '/home/webapps/project1/folder1/',
output_path = '/home/webapps/project1/folder2/';
fs.readdir(input_path, function(err, files) {
var date = new Date();
date = ('0' + (date.getMonth()+1)).slice(-2) + ''
+ ('0' + date.getDate()).slice(-2) + ''
+ ('0' + (date.getFullYear())).slice(-2);
files.forEach(function(file) {
var name, extension;
// Check for *.CSV files
if (file.toLowerCase().indexOf('.csv') !== file.length - 4) return;
name = file.substr(0, file.length - 4);
extension = file.substr(-4);
// Copy file
fs.createReadStream(input_path + file).pipe(fs.createWriteStream(output_path + name + date + extension));
});
});