Phiên trùng lặp trong ConEmu


10

Có cách nào để "nhân đôi" phiên trong ConEmu.

Tôi biết rằng mọi loại thiết bị đầu cuối đều không thể (cmd.exe, powershell, v.v.), nhưng tôi quan tâm nhất đến tình huống sau:

  • Tôi đang ở trong giao diện điều khiển cmd.exe bên trong ConEmu.
  • Bằng cách nhập Ctrl-T (phím tắt tôi đã chỉ định) tôi có thể mở tab bảng điều khiển mới, với một phiên mới (cmd.exe).

Tôi muốn phiên này bắt đầu trong cùng thư mục với thư mục đầu tiên , bản gốc. Tôi cảm thấy rằng nó có thể được thực hiện với biến% cd% hoặc tương tự, nhưng tôi không thể quản lý nó.

Câu trả lời:


6

Biến thể 1

Gõ vào hiện có cmd prompt

cmd -new_console

và nhấn Enter. Ngoài ra, bạn có thể tạo phím nóng / macro cho chuỗi này, ví dụ AppsN->

print("cmd -new_console\n")

hoặc tạo cmd-file hoặc bí danh doskey.


Biến thể 2

Sử dụng mục menu Duplicate root.... Nó sẽ tạo một bản sao của trình bao (cha mẹ) nhất của tab hiện tại (nơi bạn đang gọi mục menu). Ngoài ra, bạn có thể vô hiệu hóa xác nhận trùng lặp trong Settings\ Confirmation.


Biến thể 3

Với các phiên bản mới nhất (từ 140818), bạn cũng có thể sử dụng %CD%biến môi trường trong hàm Shell() GuiMacro . Làm thế nào để thiết lập vỏ của bạn được mô tả ở đây .

Shell("", "cmd", "", "%CD%")

Cảm ơn. Đó không phải là giải pháp hoàn hảo, bởi vì nó không hoạt động nếu tôi ở giữa một số ứng dụng (ssh, vagrant, bất cứ điều gì có thể chờ đợi lâu). Nhưng, đó là một giải pháp. Và cảm ơn một lần nữa.
Michael Field

Nếu bạn đang ở trong một ssh giữa (hoặc smth khác) - "phiên trùng lặp" sẽ không rõ ràng. Bởi vì "những gì để nhân đôi"? Phiên hoạt động của bạn là ssh, không phải cmd. Vâng, cmd có thể ở dưới cùng của ngăn xếp quá trình, nhưng trạng thái của nó là gì? Tôi đoán không xác định ...
Maximus

Bạn đúng. Tuy nhiên, rất thường xuyên, tôi cần chính xác điều đó: để nhân đôi trạng thái cuối cùng của đáy của quá trình ngăn xếp.
Michael Field

Chà, kiểm tra 121109. "Nhân đôi gốc" trong menu Tab. Hoạt động với cmd.
Maximus

2

Sau đây sẽ làm điều tương tự cho PowerShell

ConEmu64.exe /config "shell" /dir "$(pwd)" /cmd powershell -new_console:n

Tôi đã tạo chức năng sau được tải trong hồ sơ PowerShell của mình

function Create-Console($path = $(pwd)) {
  $console = Resolve-Path (join-path (join-path "$env:PROGRAMW6432*" "console*") "ConEmu64*");
  . $console /config "shell" /dir "$path" /cmd powershell -new_console:n
}

Set-Alias sh Create-Console

Sau đó, tôi có thể thực hiện các thao tác sau trong bảng điều khiển để tạo tab PowerShell mới trong cùng thư mục:

> sh

hoặc tạo một tab trong một thư mục khác với:

> sh c:\some\directory\path
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.