Tmux සැසියක ඇති සියලුම අනුචලන ලිපිගොනු ගොනුවකට ලිවිය හැක්කේ කෙසේද?
capture-panel
වත්මන් තිරය අල්ලා ගත හැකිය, නමුත් සම්පූර්ණ අනුචලනය නොවේ.
Tmux සැසියක ඇති සියලුම අනුචලන ලිපිගොනු ගොනුවකට ලිවිය හැක්කේ කෙසේද?
capture-panel
වත්මන් තිරය අල්ලා ගත හැකිය, නමුත් සම්පූර්ණ අනුචලනය නොවේ.
Answers:
මෙය history-limit
ඔබගේ ඔබ විසින් සකසා ඇති වටිනාකම මත රඳා පවතී .tmux.conf
- පෙරනිමිය 2000; ඔබට තවත් ග්රහණය කර ගැනීමට අවශ්ය නම්, ඔබට පැහැදිලිවම පේළි ගණන සැකසිය යුතුය.
සම්පූර්ණ අනුචලනය ග්රහණය කර ගැනීම සඳහා, පිටපත් ප්රකාරය ඇතුළත් කරන්න, සම්පූර්ණ අනුචලනය තෝරන්න, එය බෆරයට යොදන්න, ඉන්පසු එය ඔබගේ ගොනුවට අලවන්න.
ඔබ මෙය ඉටු කරන්නේ කෙසේද යන්න mode-keys
ඔබ කැමති විකල්පය, vi හෝ emacs මත රඳා පවතී . man tmux
අදාළ යතුරු විස්තර කරන ප්රයෝජනවත් වගුවක් ඇත.
.tmux.conf
මෙය සරල කිරීම සඳහා මගේ පහත සඳහන් දෑ ඇත :
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
සම්පූර්ණ අනුචලනය අල්ලා ගැනීමේ ක්රියාවලිය පහත පරිදි වේ:
PrefixEsc : පිටපත් ප්රකාරයට ඇතුළු වීමට
v : දෘශ්ය තේරීම ආරම්භ කිරීමට (ඔබ දැනටමත් තිරයේ පතුලේ ඇතැයි උපකල්පනය කරන්න)
gg : අනුචලන පිටුවේ ඇති සියල්ල අල්ලා ගැනීමට
y : එය බෆරයට දැමීම
Prefixc : තවත් tmux කවුළුවක් විවෘත කරන්න
vim scrollback.txt
i : ඇතුළු කිරීමේ මාදිලිය vim ලෙස ඇතුළත් කරන්න
Prefixp : ගොනුවට අලවන්න
ප්රයෝජනවත් විය හැකි තාවකාලික ගොනුවකට බෆරය පිටපත්xsel
කරන්නේ කෙසේද යන්න විස්තර කරන පිළිතුරක් ද මෙහි ඇත.
:set paste
vim හි භාවිතා කරන්නේ නම් , ස්වයංක්රීය ඉන්ඩෙන්ටේෂන් හෝ ඇතුළු කිරීම් මත පදනම් වූ යතුරු බැඳීම් එකතු කිරීම vim නොසලකා හරිනු ඇත.
.tmux.conf
...
සරල උත්තරයක්, හුදෙක් භාවිතය සඳහා බලා අයට prefix+ :, එසේ නම් ටයිප් capture-pane -S -3000
+ return(ආදේශ 3000
මෙම පිටපත් එම ආරක්ෂණ රේඛාවන් ඔබ බේරා ගැනීමට කැමතියි කෙසේ වෙතත් බොහෝ රැහැන් සමග.).
එසේ නම්, ගොනුව, හුදෙක් භාවිතා කිරීම ප්රේරක බේරා ගැනීමට prefix+ :නැවත, සහ ටයිප් save-buffer filename.txt
+ returnවෙනුවට, filename
ඔබ කැමති ඕනෑම දෙයක් සමග.
(පෙරනිමියෙන් prefixවේ ctrl + b.)
save-buffer filename.txt
(වත්මන් නාමාවලියෙහි) /
නොව ගොනුව සුරකින බවක් පෙනේ pwd
. ඒ වෙනුවට, මම නිරපේක්ෂ ලිපිගොනු මාර්ගයක් ලබා දුන් අතර එය චමත්කාරජනක ලෙස ක්රියා
සමග tmux 1.5, එම capture-pane
විධානය පිළිගන්නා -S
හා -E
අල්ලා ගැනීම පිළිබඳ ආරම්භක හා අවසාන පේළි නියම කිරීමට, ඉතිහාසයේ රේඛා නියම කිරීමට negative ණ අගයන් භාවිතා කළ හැකිය. ඔබ දත්ත බෆරයක ඇති පසු, ඔබට එය සුරැකිය හැක save-buffer
.
.tmux.conf
ලිපිගොනු නාමය සඳහා විමසුමක් සහිතව ඒ සියල්ල ආවරණය කරන උදාහරණ බන්ධනයක් (සුදුසු ) මෙන්න :
bind-key P command-prompt -p 'save history to filename:' -I '~/tmux.history' 'capture-pane -S -32768 ; save-buffer %1 ; delete-buffer'
මෙය ඉතිහාසයේ පේළි 32768 ක් සහ දැනට ප්රදර්ශනය කර ඇති රේඛා ග්රහණය කරයි. Tmux 1.6 සමඟ ආරම්භ කර , ඔබේ කවුළුවෙහි 32Ki රේඛාවලට වඩා ගැඹුරු ඉතිහාසයක් තිබේ නම් (සාමාන්යයෙන් 2Gi රේඛා දක්වා) ඔබට INT_MIN දක්වා අංක භාවිතා කළ හැකිය. දී ආරම්භ tmux 2.0, ඔබ භාවිතා කළ හැකිය capture-pane -S -
, "ඉතිහාසයේ මුල සිට ආරම්භ" එයින් අදහස් කරන්නේ (එනම් කිසිදු විශාල, දෘඪ-කේතනය සෘණ සංඛ්යාවක්).
සටහන: සුරකින ලද ගොනුවේ ඇති පේළි ගණන සෑම විටම කවුළුවෙහි ඉතිහාස සීමාවට සහ එහි උසට සමාන නොවේ.
කවුළුවක ඉතිහාස බෆරය පිරී ඇති විට, එක් පේළියක් පමණක් ඉවතලීම වෙනුවට tmux පැරණිම 10% පේළි ඉවතලයි . මෙයින් අදහස් කරන්නේ කවුළුවක history ලදායී ඉතිහාස ගැඹුර සමහර විට එහි වින්යාසගත සීමාවෙන් 90% ක් තරම් අඩු වනු ඇති බවයි.
-S
නැත capture-pane
(එය 1.3-2 ලෙස පෙනේ, එය එසේ වුවත් dpkg
, මට අනුවාද අංකයක් පෙන්වීමට tmux ලබා ගන්නේ කෙසේදැයි මට සිතාගත නොහැක…)
tmux server-info | head -1
ඔබේ අනුවාදය බැලීමට ඔබට බොහෝ විට භාවිතා කළ හැකිය . tmux -V
tmux * 1.4 සහ ඊට පසුව ක්රියා කරයි.
[PrefixKey] :
tmux විධාන රේඛාවට පිවිසීමට කරන්න, ඉන්පසු මුළු පේළියම අලවන්න, එවිට ඔබ [Prefix] P
එය කරන්නේ ප්රාග්ධන P වන අතර ඔබ යන්න හොඳයි.
ඔබට විධාන රේඛාවෙන් ධාවනය කළ හැකි යමක් අවශ්ය නම් (ඔබේ tmux උපසර්ග යතුරු භාවිතා කරනවා වෙනුවට) ධාවනය කිරීමට උත්සාහ කරන්න:
tmux capture-pane -pS -1000000
ඔබ එය ධාවනය කර එය කිසිවක් නොකරන බව පෙනේ නම්, එයට හේතුව එය ඔබගේ තිරයේ ඇති දේ හරියටම ප්රතිදානය කිරීමයි, එබැවින් එය සමාන වේ.
ඇත්ත වශයෙන්ම, ඔබට එය ගොනුවකට නල කළ හැකිය:
tmux capture-pane -pS -1000000 > file.out
බලන්න tmux
man පිටුව හා සෙවීමට capture-pane
(නඩුවේ ග්රහණ පලා අනුක්රමය මෙන් ඔබ වර්ණ ආරක්ෂා කිරීමට අවශ්ය නම්, හෝ ඔබ විසින් ඔවුන් නව රේඛාවක් අඩංගු නොවන විට බහු දෘශ්ය රැහැන් එකතු කිරීමට අවශ්ය දැයි නියම) ඔබට කළ හැකි තවත් දේවල් සඳහා
-p
ඉතා tmux බෆරය stdout කිරීමට තර්කය ප්රතිදානයන් වෙනුවට.
මට සම්මත යතුරු බන්ධන ඇති අතර එය ason ජේසන්ව්රියන්ගේ පිළිතුරට වඩා ටිකක් වෙනස් වූ අතර වින්යාසයේ කිසිවක් වෙනස් නොවීය.
පහත දැක්වෙන්නේ මා වෙනුවෙන් වැඩ කළ වට්ටෝරුවයි. ඔබට tmux වින්යාසයේ කිසිදු වෙනසක් කිරීමට අවශ්ය නැතිනම් සමහර අනුචලන ඉක්මනින් පිටපත් කිරීමට අවශ්ය නම් ඔබට එය ප්රයෝජනවත් වනු ඇත.
Prefix== Ctrl+bමගේ tmux හි (tmux 1.6, debian 7).
මෙය සක්රීය කරන tmux ප්ලගිනයක් මෙන්න:
https://github.com/tmux-plugins/tmux-logging
ඔබ එය ස්ථාපනය කිරීමෙන් පසුව, සම්පූර්ණ අනුචලනය සමඟ සුරකින්න prefix + alt-shift-p
.
Tmux සැසියක ඇති සියලුම අනුචලන ලිපිගොනු ගොනුවකට ලිවිය හැක්කේ කෙසේද?
මම මෙය මගේ ~ / .tmux.conf හි භාවිතා කරමි , දැන් මම මගේ ධාවන කවචයෙන් පිටවන විට, කවුළු ප්රතිදානය අද්විතීය ලොග් ගොනුවකට සුරකිනු ඇත:
set -g remain-on-exit
set-hook pane-died 'capture-pane -S - -E - ; save-buffer "$HOME/logs/tmux/tmux-saved.#{host_short}-#{session_id}:#{window_id}:#{pane_id}-#{pane_pid}-#{client_activity}.log"; delete-buffer; kill-pane'