bagaimana cara mengatur pintasan di conEmu untuk secara otomatis membuka tab baru dengan cygwin, dan secara otomatis memulai perintah yang diberikan (katakanlah, ssh)?
Jadi mari kita mulai dengan cara meluncurkan cygwin bash di tab baru. Dalam contoh saya, saya menggunakan cygwin bash msys-git karena itulah yang telah saya instal:
Perintah yang saya gunakan adalah:
% systemroot% \ SysWOW64 \ cmd.exe / c "" C: \ Program Files (x86) \ Git \ bin \ sh.exe "--login -i"
Jadi itu shell interaktif. Jika saya ingin menjalankan ls dari dalam cygwin bash, saya bisa menggunakannya sh -exec
sebagai gantinya sh --login -i
:
C:\Users\JDearing>"C:\Program Files (x86)\Git\bin\sh.exe" -exec "/bin/ls c:\\"
+ /bin/ls c:
$Recycle.Bin VC_RED.MSI install.exe
BOOTSECT.BAK VC_RED.cab install.ini
Chocolatey Windows install.res.1028.dll
Documents and Settings boot install.res.1031.dll
EntLib41Src bootmgr install.res.1033.dll
Intel eula.1028.txt install.res.1036.dll
MSOCache eula.1031.txt install.res.1040.dll
PerfLogs eula.1033.txt install.res.1041.dll
Program Files eula.1036.txt install.res.1042.dll
Program Files (x86) eula.1040.txt install.res.2052.dll
ProgramData eula.1041.txt install.res.3082.dll
Recovery eula.1042.txt old_machine
RiskWorks eula.2052.txt pagefile.sys
SWSetup eula.3082.txt profiles
SafeBoot.fs globdata.ini sysinternals
SafeBoot.rsv hiberfil.sys vcredist.bmp
System Volume Information ilspy
Users inetpub
C:\Users\JDearing>
Jadi, Anda mungkin dapat memulai ssh dari cygwin bash dengan sesuatu seperti:
% systemroot% \ SysWOW64 \ cmd.exe / c "" C: \ Program Files (x86) \ Git \ bin \ sh.exe "-exec" / usr / bin / ssh [email protected] ""
Anda mungkin harus bermain dengan tanda kutip. Saya sarankan melihat tugas conemu saya untuk referensi.
cmd /c
sebenarnya berlebih, kecuali Anda perlu mengatur variabel lingkungan apa pun sebelum menjalankan ssh.exe. Jika Anda tidak perlu mengatur lingkungan - Anda dapat menjalankan ssh.exe secara langsung, tanpa "cmd / c".bash.exe -c "ssh ..."
daripadabash.exe --exec "ssh ..."
Ini adalah cara yang paling tidak terlihat untuk menjalankan tugas SSH dan menjalankan ConEmu. Membutuhkan konfigurasi yang sedikit lebih banyak, tetapi pada akhirnya layak dilakukan.
Buat kunci ssh
Langkah-langkah dari jawaban yang sangat baik di sini: /server/241588/how-to-automate-ssh-login-with-password . ssh-keygen akan menanyakan beberapa pertanyaan. Jawaban standarnya baik-baik saja. Jika Anda ingin menggunakan kata sandi kosong, itu bagus juga. Amankan keyfile Anda. Ganti id, server dan kata sandi dengan kredensial Anda.
Tambahkan tugas untuk ssh
""C:\Program Files\Cmder\vendor\git-for-windows\bin\sh.exe" -exec "/usr/bin/ssh id@server""
(Opsional) Tetapkan tugas sebagai tugas default
Jika Anda melakukan semuanya dengan benar, konsol Anda akan mulai dan ssh masuk ke server pilihan Anda, tidak perlu kata sandi karena Anda menggunakan kunci pas.
sumber
C:\cygwin64\bin\bash.exe --login -i -c "ssh myUser@myServer"
-c akan menjalankan perintah string berikut secara otomatis setelah masuk untuk Anda
sumber