Я пишу задачу gulp, чтобы сделать следующее:
- Следите за изменениями в файле изображения
- Если файл изображения изменился, скопируйте содержимое изображения в буфер обмена, чтобы я мог его вставить.
Примечание. Я работаю в Windows и использую nircmd.exe для копирования содержимого образа. У меня работает следующая командная строка:
nircmd.exe clipboard copyimage "G:\IMG\pic.png"
Я поместил это в файл .bat, чтобы запустить файл через командную строку.
Мой gulpfile (пока):
var gulp = require('gulp'),
watch = require('gulp-watch'),
shell = require('gulp-shell'),
run = require('gulp-run'),
clipboard = require("gulp-clipboard"),
myTerminal = require("child_process").exec,
commandToBeExecuted = "./copy-to-clipboard.bat";
gulp.task('copy-to-clipboard', function () {
require('child_process').spawn('cmd', ['/s', '/c', '"G:\\Git\\copy-to-clipboard\\copy-to-clipboard.bat"'], {
windowsVerbatimArguments: true
});
});
gulp.task('default', function () {
watch('watch/*.png','copy-to-clipboard');
});
Я пробовал gulp-shell, но так как это открывает терминал узла, nircmd.exe не распознается как внутренняя или внешняя команда.
Я также пробовал child_process (как spawn, так и exec), но, хотя я не получаю ошибок, содержимое все еще не находится в буфере обмена.
Есть ли способ проще или это просто невозможно?
Заранее спасибо!