Answers:
Ctrl+ ඔබා Rටයිප් කරන්න ssh
. Ctrl+ Rනවතම විධානයේ සිට පැරණි එක දක්වා සෙවීම ආරම්භ කරයි (ප්රතිලෝම සෙවීම). ඔබට ආරම්භ වන විධානයන් එකකට වඩා තිබේ නම්, ඔබ තරගය සොයා ගන්නා තෙක් + නැවත නැවතත් ssh
ඔබන්න .CtrlR
ඔබ තරගය සොයාගත් පසු Enterවිධානය ක්රියාත්මක කිරීමට හෝ වමේ / දකුණු කර්සරය ඔබන්න .
සෙවුමේ දිශාව හරවා යැවීමට Ctrl+ සඳහා පෙරනිමි ප්රතිලෝම විකල්පයක් නොමැත, Rනමුත් මෙහිදී ඔබට ඒ පිළිබඳ යෝජනා කිහිපයක් සොයාගත හැකිය.
මම ඉහත සුළු වෙනස්කම් කරමි, මට හොඳින් ක්රියා කරයි (ඔබ ඔබේ බාෂ් ඉතිහාසය ගැන සඳහන් කරන්නේ නම්
මගේ නිවසේ ෆෝල්ඩරයේ මම නමින් ගොනුවක් සාදමි
.inputrc
ඇතුළත මෙය යයි
"\e[5~": history-search-backward
"\e[6~": history-search-forward
සටහන: ඉහත 14.04 හි තවදුරටත් ක්රියාත්මක වන බවක් නොපෙනේ, එබැවින් මෙය එකම දේ කරයි -
"\e[A":history-search-backward
"\e[B":history-search-forward
ඊට පෙර මා කැමති විධානයක් ටයිප් කර පිටුව ඉහළට / පිටුව dn බොත්තම් භාවිතා කරමින් ඉතිහාසය සොයයි, සෑම විටම පිටු ඉහළට ආරම්භ වේ
මෙන්න සම්භාව්ය විධාන භාවිතා කරන තවත් ක්රමයක් (ඩිස්ට්රෝස් හරහා වැඩ කිරීමට වැඩි ඉඩක් ඇත). විධාන ඉතිහාසය .bash_history
ඔබගේ නිවාස නාමාවලියෙහි ගොනුවේ ගබඩා කර ඇති බැවින් ඔබට මෙය කළ හැකිය:
grep "ssh" ~/.bash_history
-i
ඔබට සංවේදී නොවන සෙවීමක් අවශ්ය නම් ධජය අමතක නොකරන්න .
history | grep ssh
තාවකාලික සැසියේ ssh පමණක් පෙන්වනු ඇත, එබැවින් මම මෙම පිළිතුර සඳහා යන්නෙමි.
මම පහත දැක්වෙන කාර්යය අන්තර්ජාලයේ කොතැනක හෝ සොයාගෙන ඇති අතර එය විශාල බලපෑමක් ඇති කර ඇත්තෙමි. මෙය ඔබගේ ~/.bashrc
:
hgrep () {
history | egrep --color=auto --recursive "$@" | egrep --color=auto --recursive -v "hgrep $@"
}
දැන් ඔබේ කවචය නැවත පටවන්න : exec bash
. ඔබට දැන් නව විධානයක් ඇත, ඔබට එය එසේ භාවිතා කළ හැකිය:
hgrep ssh
එය ඔබගේ ඉතිහාසයට ගැලපෙන විධාන ලැයිස්තුවක් පෙන්වයි. විධානයක් ක්රියාත්මක කිරීම !
සඳහා විධාන අංකය ටයිප් කරන්න . මෙන්න උදාහරණයක්:
~:$ hgrep scp
207 tn scp foreign-teachers __HOST__:unity.log __HOST__:compiz.log .
421 tn scp scott-laptop __HOST__:Scott\ Severance.asc .
422 tn scp scott-laptop __HOST__:'Scott\ Severance.asc' .
468 tn scott-desktop scp -r Backgrounds/* __HOST__:Pictures/Backgrounds
469 tn scott-laptop scp -r Backgrounds/* __HOST__:Pictures/Backgrounds
470 scp -r Backgrounds/* 192.168.1.2:Pictures/Backgrounds
~:$ !207
මම මෙම ප්රවේශයට වඩා Ctrl+ වඩා හොඳට කැමතියි, Rමන්ද එය වඩාත් නම්යශීලී සෙවීම් වලට ඉඩ සලසයි, මට එකවර බහුවිධ ප්රති results ල දැකිය හැකිය.
ඔබ Emacs හි ෂෙල් භාවිතා කරන්නේ නම් ( M-x shell
) ඔබට භාවිතා කළ හැකිය M-r
(එය පර්යන්තයක Ctrl+R ට සමාන වේ ).
මම ලොග් නිසා මගේ bash පරිසරය සකස් කිරීමට වැඩි කැමැත්තක් - ඉතිහාසය යහපත් නමුත් සීමා සියලු සියලු විධාන ඔවුන් තුළ ධාවනය කර තිබෙන බහලුම අමතරව, මම කවදා හෝ ක්රියාත්මක කර ඇති විධාන එවිට මම ලැයිස්තුවට විධාන ක්රියාත්මක කරන්න. මම වත්මන් ඩිරෙක්ටරියේ ධාවනය කර ඇති අතර, එය ග්රෙප් කිරීම සඳහා පයිප්ප දැමිය හැකිය - එය 'පිඟාන' ලෙස හැඳින්වේ බලන්න:
https://github.com/wolfwoolford/dish
ඔබට හඹා යෑමට අවශ්ය නම්, මෙය ඔබේ .bashrc ( https://github.com/wolfwoolford/dish/blob/master/dishrc ) හි මූලාශ්රය කරන්න.
ඩිරෙක්ටරිය නොසලකා මෙතෙක් ක්රියාත්මක වන සෑම විධානයක්ම මුද්රණය කරන 'ඩිෂ්' නොහොත් ඩිෂ් ග්ලෝබල් යනුවෙන් ඔබට නොමිලේ ලැබෙන ඉතා ප්රයෝජනවත් විධානයක් තිබේ. නිසැකවම මෙය ප්රයෝජනවත් වන්නේ grep සහ වලිගය ආදිය භාවිතා කරන විට පමණි ...
මම වසර ගණනාවක් තිස්සේ එය භාවිතා කර ඇති අතර එය නව පෙට්ටියක් සැකසෙන සෑම විටම ස්ථාපනය කරන පළමු දෙයයි. එය ඔබ පෙළ ලිපිගොනු තුළට සැඟවුණු නාමාවලියක (~ / .dish) ලොග් කරයි .. මට කවදාවත් තැටි අවකාශය පිළිබඳ ගැටළුවක් නොවීය ...
මෙය @ssmy ට අදහස් දැක්වීමක් ලෙස ලිවීමට අවශ්ය වූ නමුත් සහයෝගයෙන් කටයුතු කිරීම සඳහා අදහස් දැක්වීමේ ආකෘතිය ලබා ගැනීමට නොහැකි විය.
history | grep ssh
ඔබ සමඟ ඉතිහාසය සෙවීමෙන් පසුව , විස්මිත සලකුණක් සහිතව එහි අංකය ටයිප් කිරීමෙන් ඔබට අවශ්ය විධානය ක්රියාත්මක කළ හැකිය, උදා !42
.
උදාහරණයක්:
$ ඉතිහාසය | grep ssh 5 ssh me@someserver.net 13 ssh me@someotherserver.net 42 ssh me@thisone.com $! 42