Dieses Mal werde ich Ihnen die Batch-Umbenennung von Knotendateien vorstellen. Was sind die Vorsichtsmaßnahmen für die Batch-Umbenennung von Knotendateien? Das Folgende ist ein praktischer Fall, schauen wir uns das an.
In einer tatsächlichen Anforderung muss ein Stapel von Dateien (z. B. Text, Bilder) umbenannt und entsprechend den Nummern nummeriert werden. Ich habe gerade diese Gelegenheit genutzt, um mich mit den FS-Dateioperationen des Knotens vertraut zu machen, und ein Skript geschrieben, um Dateinamen stapelweise zu ändern. AnforderungenFolgende Bilddateien sind verfügbarIm fs-Modul gibt es zwei synchrone und asynchrone Möglichkeiten
//异步fs.readFile('test.txt', 'utf-8' (err, data) => { if (err) { throw err; } console.log(data); });//同步let data = fs.readFileSync('test.txt');console.log(data);
fs.writeFile('test2.txt', 'this is text', { 'flag': 'w' }, err => { if (err) { throw err; } console.log('saved'); });
Flag-Schreibmethode:
a : Anhängen Verzeichnis erstellen
fs.mkdir('dir', (err) => { if (err) { throw err; } console.log('make dir success'); });
fs.readdir('dir',(err, files) => { if (err) { throw err; } console.log(files); });
fs.stat('test.txt', (err, stats)=> { console.log(stats.isFile()); //true})
stats.isFile() 是否为文件 stats.isDirectory() 是否为目录 stats.isBlockDevice() 是否为块设备 stats.isCharacterDevice() 是否为字符设备 stats.isSymbolicLink() 是否为软链接 stats.isFIFO() 是否为UNIX FIFO命令管道 stats.isSocket() 是否为Socket
let stream = fs.createReadStream('test.txt');
let stream = fs.createWriteStreamr('test_copy.txt');
Entwicklungsidee: Quellverzeichnis lesenBeurteilen Sie, ob das Speicherverzeichnis vorhanden ist, und erstellen Sie ein neues Verzeichnis, wenn es nicht vorhanden istKopieren Sie die DateiBeurteilen Sie den kopierten Inhalt. Ob ein Lesestream für die Datei erstellt werden soll Erstellen Sie einen Schreibstream Link-Pipe und schreiben Sie den Dateiinhalt
let fs = require('fs'), src = 'src', dist = 'dist', args = process.argv.slice(2), filename = 'image', index = 0;//show helpif (args.length === 0 || args[0].match('--help')) { console.log('--help\n \t-src 文件源\n \t-dist 文件目标\n \t-n 文件名\n \t-i 文件名索引\n'); return false; } args.forEach((item, i) => { if (item.match('-src')) { src = args[i + 1]; } else if (item.match('-dist')) { dist = args[i + 1]; } else if (item.match('-n')) { filename = args[i + 1]; } else if (item.match('-i')) { index = args[i + 1]; } }); fs.readdir(src, (err, files) => { if (err) { console.log(err); } else { fs.exists(dist, exist => { if (exist) { copyFile(files, src, dist, filename, index); } else { fs.mkdir(dist, () => { copyFile(files, src, dist, filename, index); }) } }); } });function copyFile(files, src, dist, filename, index) { files.forEach(n => { let readStream, writeStream, arr = n.split('.'), oldPath = src + '/' + n, newPath = dist + '/' + filename + index + '.' + arr[arr.length - 1]; fs.stat(oldPath, (err, stats) => { if (err) { console.log(err); } else if (stats.isFile()) { readStream = fs.createReadStream(oldPath); writeStream = fs.createWriteStream(newPath); readStream.pipe(writeStream); } }); index++; }) }
Verwenden von JS-Code zum Erstellen von Sperreffekten
Verwenden von H5-Canvas zum Erstellen von Sperreffekten
Das obige ist der detaillierte Inhalt vonStapelumbenennung der Knotendatei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!