En MC puedo copiar el nombre del archivo actual de la lista de archivos a la consola presionando Ctrl+ Enter.
Supongamos que quiero copiar varios archivos a la consola. Ejemplo: quiero crear *.zip
con varios archivos:
zip new_zip.zip a.txt b.txt c.txt 231202fkfo3f.txt
Puedo seleccionar varios archivos con Insertar (o equivalente Ctrl+ t). Quiero usar un atajo después de eso para que todos los nombres de los archivos seleccionados vayan directamente a la consola. Algo así como Ctrl+ Enter.
¿Cuáles son las formas de hacerlo?
Respuesta1
Si presiona Ctrl+ x t, pegará los nombres de todos los archivos que haya etiquetado con Ctrl+ to Inserten la línea de comando.
Respuesta2
Una solución integrada similar está disponible en el F2menú de usuario. Se llama "Hacer algo en los archivos etiquetados" y ejecuta el comando dado en los archivos uno por uno.
Se podrían agregar nuevos comandos a este menú. Es una solución un poco complicada, pero funcionó para mí. (Es necesario el soporte de subcapa).
El archivo de configuración del menú de usuario generalmente se encuentra en:
/etc/mc/mc.menu
Mi solución se basa en "Hacer algo con los archivos etiquetados". Copié sus líneas y las modifiqué así:
+ t t
p Put selected files to history
set %t
while [ -n "$1" ]; do
STR="$STR \\\"$1\\\""
shift
done
bash -ic "history -s $STR" > /dev/null
La primera línea significa que debe mostrarse solo si se seleccionan varios archivos. La segunda línea contiene un título y un acceso directo dentro del menú de usuario ( p). Después de eso viene un script de shell que agrega nombres de archivos seleccionados a su historial.
Agregue estas líneas mc.menu
y tenga en cuenta la tabulación. La primera y segunda línea no tienen tabulación y el guión está tabulado con TAB. De lo contrario, mc
no sería posible analizarlo.
Después de eso debes seleccionar algunos archivos y presionar F2. Presione el recién agregado "Poner los archivos seleccionados en el historial". Ahora se añaden al historial, pero conviene volver a leerlo para poder utilizarlo. Presione Ctrl+ Oy deberá escribir history -r
en la línea de comando. Finalmente encontrará los nombres de archivos seleccionados presionando UPla tecla.
También se podría utilizar una solución alternativa. Quizás sea más fácil simplemente imprimir la cadena en el terminal y luego copiarla y pegarla. El siguiente script implementa esto:
+ t t
p Print selected files to subshell
set %t
while [ -n "$1" ]; do
STR="$STR \"$1\""
shift
done
echo "$STR"