Ya no tienes que investigar más en otras páginas ya que has llegado al lugar adecuado, tenemos la respuesta que necesitas hallar y sin problema.
Solución:
Este es el contenido de su tarea. Registrado en la compilación 120909 de ConEmu.
>cmd -cur_console:n
cmd -cur_console:s1TVn
cmd -cur_console:s1THn
cmd -cur_console:s2THn
Esto es un ejemplo. Dividir en ConEmu puede ser tan complejo como desee, cualquier configuración con cualquier proporción es posible. Lea la wiki del proyecto para obtener más información sobre -new_console
y -cur_console
interruptores.
Para ejecutar todo eso sin crear una nueva tarea
Hay /cmdlist
ConEmu.exe
interruptor.
Ejemplo de uso para el contenido de los accesos directos (en el escritorio, por ejemplo):
ConEmu -cmdlist cmd -cur_console:fn ||| cmd -cur_console:s1TVn ||| cmd -cur_console:s1THn ||| cmd -cur_console:s2THn
¿Necesita ejecutar eso desde otro archivo cmd? Aquí está consoles.cmd
ejemplo:
start ConEmu -cmdlist cmd -cur_console:fn ^|^|^| cmd -cur_console:s1TVn ^|^|^| cmd -cur_console:s1THn ^|^|^| cmd -cur_console:s2THn
Se me ocurrió la siguiente implementación. Lo uso para proyectos de desarrollo web. Consolas para corredores de tareas (ej: gulp), git, compiladores javascript (ej: mecanografiado), etc. El objetivo era abrir 4 ventanas de consola y cambiar el directorio al directorio donde ejecuté el * .cmd. No quería tener varias copias del script por lotes en caso de que tuviera que cambiarlo. No quería que el shell fuera por lotes y quería que el shell fuera bash. Estoy en Windows, entonces, se necesita cygwin para bash shell.
Creé un archivo .cmd con nombre arbitrario. Llamé mía 4 consoles.cmd
. Cygwin está instalado (la versión de 64 bits en mi caso). También el Cygwin chere
El paquete está instalado y es necesario.
4 consoles.cmd
contenido:
@echo off
for %%i in ("%~dp0....") DO (set dirVar=%%~ni)
for %%i in ("%~dp0.") DO (set dir2Var=%%~ni)
set finalValue=%dirVar% %dir2Var%
start C:"Program Files"ConEmuConEmu64.exe -cmdlist ^
C:cygwin64binbash -c "/bin/xhere /bin/bash.exe" -cur_console:fna:t:"%finalValue%":C:"C:cygwin64Cygwin.ico" ^|^|^| ^
C:cygwin64binbash -c "/bin/xhere /bin/bash.exe" -cur_console:s1TVna:t:"%finalValue%":C:"C:cygwin64Cygwin.ico" ^|^|^| ^
C:cygwin64binbash -c "/bin/xhere /bin/bash.exe" -cur_console:s1THna:t:"%finalValue%":C:"C:cygwin64Cygwin.ico" ^|^|^| ^
C:cygwin64binbash -c "/bin/xhere /bin/bash.exe" -cur_console:s2THna:t:"%finalValue%":C:"C:cygwin64Cygwin.ico"
puse 4 consoles.cmd
en un servicio de alojamiento de archivos con fines de copia de seguridad en caso de que mi disco duro se bloquee. También para mayor comodidad al compartir entre máquinas de desarrollo.
El script por lotes cambiará el directorio de las 4 ventanas de la consola al directorio donde existe el .cmd. Así que creé Duro Enlaces simbólicos en el directorio donde quiero que las 4 ventanas de la consola cambien de directorio. Los enlaces simbólicos apuntan a lo canónico 4 consoles.cmd
.
Ejecute un enlace simbólico y los 4 directorios de trabajo de los shells de la consola serán la ubicación en la que se encuentra el enlace simbólico en el sistema de archivos
Mi código de ejecución de tareas de gulp para cualquiera que esté interesado
package.json
"name": "MyApp",
"version": "1.0.0",
"description": "",
"main": "gulpfile.js",
"private": true,
"devDependencies":
"del": "^1.2.0",
"gulp": "^3.9.0",
"gulp-batch": "^1.0.5",
"gulp-concat": "^2.5.2",
"gulp-imagemin": "^2.2.1",
"gulp-minify-css": "^1.1.6",
"gulp-ng-annotate": "^1.0.0",
"gulp-plumber": "^1.0.1",
"gulp-rename": "^1.2.2",
"gulp-sourcemaps": "^1.5.2",
"gulp-uglify": "^1.2.0",
"gulp-watch": "^4.2.4",
"imagemin-pngquant": "^4.1.0"
,
"author": "Author",
"license": "ISC"
bower.json
"name": "MyProject",
"version": "1",
"license": "MIT",
"private": true,
"ignore": [
"**/.*",
"node_modules",
"bower_components"
],
"dependencies":
"bootstrap": "~3.3.4",
"jquery": "~2.1.3",
"angular": "~1.4.0",
"angular-route": "~1.4.0",
"angular-animate": "~1.4.0",
"font-awesome": "~4.3.0",
"underscore": "~1.8.3",
"bootstrap-datepicker": "~1.4.0",
"angularjs-toaster": "~0.4.12",
"angular-scroll": "~0.7.0",
"moment": "~2.10.2",
"angular-loading-bar": "~0.7.1"
gulpfile.js
'use strict';
var gulp = require('gulp');
var batch = require('gulp-batch');
var sourcemaps = require('gulp-sourcemaps');
var minifycss = require('gulp-minify-css');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var concat = require('gulp-concat');
var del = require('del');
var plumber = require('gulp-plumber');
var watch = require('gulp-watch');
var imagemin = require('gulp-imagemin');
var pngquant = require('imagemin-pngquant');
var ngAnnotate = require('gulp-ng-annotate');
gulp.task('default', ['clean'], function ()
gulp.start('images', 'vendorCss', 'applicationCss', 'fontIcons', 'vendorJavascript', 'applicationJavascript');
);
gulp.task('clean', function (cb)
del(['./dist/*'], cb);
);
gulp.task('images', function ()
return gulp.src([
'./content/img/**/*'
])
.pipe(imagemin(
optimizationLevel: 3,
progressive: true,
interlaced: true,
svgoPlugins: [ removeViewBox: false ],
use: [pngquant()]
))
.pipe(gulp.dest('./dist/img'));
);
gulp.task('fontIcons', function ()
return gulp.src([
'./bower_components/bootstrap/dist/fonts/**.*',
'./bower_components/font-awesome/fonts/**.*'
])
.pipe(gulp.dest('./dist/fonts'));
);
gulp.task('vendorCss', function ()
return gulp.src([
'./bower_components/bootstrap/dist/css/bootstrap.css',
'./bower_components/font-awesome/css/font-awesome.css',
'./bower_components/angularjs-toaster/toaster.css',
'./bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css',
'./bower_components/angular-loading-bar/build/loading-bar.css'
])
.pipe(concat('vendor.css'))
.pipe(gulp.dest('./dist/css'))
.pipe(rename( suffix: '.min' ))
.pipe(minifycss())
.pipe(gulp.dest('./dist/css'));
);
gulp.task('vendorJavascript', function ()
return gulp.src([
'./bower_components/jquery/dist/jquery.js',
'./bower_components/angular/angular.js',
'./bower_components/angular-route/angular-route.js',
'./bower_components/angular-resource/angular-resource.js',
'./bower_components/angular-animate/angular-animate.js',
'./bower_components/angular-scroll/angular-scroll.js',
'./bower_components/angular-loading-bar/build/loading-bar.js',
'./bower_components/angularjs-toaster/toaster.js',
'./bower_components/bootstrap/dist/js/bootstrap.js',
'./bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js',
'./bower_components/underscore/underscore.js',
'./bower_components/moment/moment.js'
])
.pipe(sourcemaps.init())
.pipe(concat('vendor.js'))
.pipe(gulp.dest('./dist/script'))
.pipe(uglify())
.pipe(rename('vendor.min.js'))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('./dist/script'));
);
gulp.task('applicationCss', function ()
return gulp.src([
'./content/css/site.css',
'./content/css/animation.css'
])
.pipe(plumber())
.pipe(concat('app.css'))
.pipe(gulp.dest('./dist/css'))
.pipe(rename( suffix: '.min' ))
.pipe(minifycss())
.pipe(gulp.dest('./dist/css'));
);
gulp.task('applicationJavascript', function ()
return gulp.src([
'./angular/**/*.js'
])
.pipe(plumber())
.pipe(ngAnnotate())
.pipe(sourcemaps.init())
.pipe(concat('app.js'))
.pipe(gulp.dest('./dist/script'))
.pipe(uglify())
.pipe(rename('app.min.js'))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('./dist/script'));
);
gulp.task('watchApplicationJavascript', ['applicationJavascript'], function ()
watch('./angular/**/*.js', batch(function (events, done)
gulp.start('applicationJavascript', done);
));
);
gulp.task('watchApplicationCss', ['applicationCss'], function ()
watch(['./content/css/site.css', './content/css/animation.css'], batch(function (events, done)
gulp.start('applicationCss', done);
));
);
Nos encantaría que puedieras recomendar este tutorial si te valió la pena.