私は1日中* nixコマンドscreen
を使用しており、この質問を始めた人を見つけることができなかったため、開始すべきだと考えました。あなたはドリルを知っています:コミュニティwiki、機能ごとに1つの答えなので、誰でも投票できます。
私は1日中* nixコマンドscreen
を使用しており、この質問を始めた人を見つけることができなかったため、開始すべきだと考えました。あなたはドリルを知っています:コミュニティwiki、機能ごとに1つの答えなので、誰でも投票できます。
回答:
私は愛、シリアルコンソールに接続するためにそれを使用してすなわち
screen /dev/ttyS0 19200
このコマンドは、19200のボー速度でシリアルポート0(ttyS0)への接続を単に開きます。
厳密には「隠された機能」ではありません。しかし、適切にセットアップされた.screenrcファイルは、世界を変えることができます。より良い例の1つは、screenrcと「ブラッドシム」をグーグルで検索することで見つけることができます-彼は、いじくり回すのに優れたファイルを持っています。
とはいえ、私のお気に入りの設定はbindkeyです。
# bind F7 to detach screen session from this terminal
# bind F8 to kill current screen window.
# bind F9 to create a new screen
# bind F10 to rename current screen window
# bind F11 to move to previous window
# bind F12 to move to next window
bindkey -k k7 detach
bindkey -k k8 kill
bindkey -k k9 screen
bindkey -k k; title
bindkey -k F1 prev
bindkey -k F2 next
これを誰から盗んだのか思い出せません(dotfile.orgの誰か)。私はssh用にわずかに変更しました:
#!/bin/sh
# scr - Runs a command in a fresh screen
#
# Get the current directory and the name of command
wd=`pwd`
cmd=$1
shift
# We can tell if we are running inside screen by looking
# for the STY environment variable. If it is not set we
# only need to run the command, but if it is set then
# we need to use screen.
if [ -z "$STY" ]; then
$cmd $*
else
# Screen needs to change directory so that
# relative file names are resolved correctly.
screen -X chdir $wd
# Ask screen to run the command
if [ $cmd == "ssh" ]; then
screen -X screen -t ""${1##*@}"" $cmd $*
else
screen -X screen -t "$cmd $*" $cmd $*
fi
fi
次に、次のbashエイリアスを設定します。
vim() {
scr vim $*
}
man() {
scr man $*
}
info() {
scr info $*
}
watch() {
scr watch $*
}
ssh() {
scr ssh $*
}
sshを使用して上記のエイリアスとiffの新しい画面を開き、画面のタイトルをsshホスト名に変更します。
乾杯z0mbix
私が便利だと思うことの1つは、画面が端末よりも大きな幅をエミュレートできることです。less
実際のログファイルに使用している場合、これは有用であり、行を折り返したくありません。を使用して:
Ctrl-A:width -w 999
screen
端末の幅よりも広く設定して、行をless
折り返さないようにします。
-s
は行を折り返さないように指示します。Left
およびRight
を使用して、行をスクロールできます。
優れた機能の1つbacktick
として、キャプションに表示するための追加情報を取り込むことができます。たとえば、さまざまなフォルダの新しいメールカウントの1行の概要を出力するスクリプトがあり、スクリーンセッションと次のような構成のホスト名を一緒に表示すると、最終行に表示されます。
backtick 1 15 15 /home/waltermundt/bin/newmail
caption always
caption string "%{.kW}%1` example.com %{.bW}%-w%{.rW}%n %t%{-}%+w %{.gW}%h%{-}"
キーは、バックティックジョブ1の出力を参照する%1`ビットです。
(hardstatus
xtermのタイトル文字列として使用し、異なる設定をしています。したがって、のcaption
代わりにを使用していますhardstatus alwayslastline
。)
自分用に印刷した小さなチートシート。
(注:すべてが先行しますCtrl-A)
A:ウィンドウの名前を変更する ":ウィンドウのリストを表示 d:セッションの切り離し
そしてscreen -D -R
、実行中のセッションをデアタッチして再アタッチします(何らかの理由でセッションにアクセスできなくなった場合)。
これらのどれも本当に隠された機能ではありませんが、これらは私が最も便利だと思う機能です。