Version 35 (modified by mitty, 8 years ago) (diff) |
---|
misc
- scriptやscreentで取ったLinuxログファイルの文字化けを直す方法 - Knowledge Database IT
- colコマンドでバッククォートとラインフィードを取り除く
# col -bx < {変換前ファイル名} > {変換後ファイル名}
- colコマンドでバッククォートとラインフィードを取り除く
- http://cubic9.com/Devel/ShellScript/%C0%A9%B8%E6%CA%B8%BB%FA%A4%E4%A5%A8%A5%B9%A5%B1%A1%BC%A5%D7%A5%B7%A1%BC%A5%B1%A5%F3%A5%B9%A4%CE%BD%FC%B5%EE/ Devel/ShellScript/制御文字やエスケープシーケンスの除去 - cubic9.com
- unix - How to pipe stderr without piping stdout - Server Fault
To do that, use one extra file descriptor to switch stderr and stdout:
find /var/log 3>&1 1>&2 2>&3 | tee foo.file
- stdoutをファイルにリダイレクトしつつ、stderrをpipe処理したいときは以下のようにする (bash)
- ls -la /var/tmp /var/tmp/hoge 2> stdout 3>&1 1>&2 2>&3 | wc; echo -----; cat stdout
1 7 45 ----- /var/tmp: total 16 drwxrwxrwt 2 root root 4096 Apr 20 04:42 . drwxr-xr-x 28 root root 4096 May 17 2010 ..
- ls -la /var/tmp /var/tmp/hoge 2> stdout 3>&1 1>&2 2>&3 | wc; echo -----; cat stdout
- stdoutをファイルにリダイレクトしつつ、stderrをpipe処理したいときは以下のようにする (bash)
- 漢(オトコ)のコンピュータ道: lessでソースコードに色をつける
結論から言うと、今日紹介する方法はGNU Source-highlightを使う。
shell> export LESS='-R' shell> export LESSOPEN='| /usr/share/source-highlight/src-hilite-lesspipe.sh %s'
- 代替画面バッファ (Alternate Screen Buffer) 1 | doda's blog
PuTTY
設定ダイアログの「端末」-「高度な設定」にある、“Alternate 端末画面への切り替えを無効にする”にチェックを入れます。
- https://www.ranvis.com/doc/putty/man/Chapter4.html#config-features-mouse
4.6.2 Xterm スタイルのマウス通知を無効にする / Disabling xterm-style mouse reporting
- マウス通知が有効になっていると、vimでマウスを使用するようになりコピペがかえって面倒になる
- ref: disabling mouse support in `vim` in a `gnome-terminal` environment - Unix & Linux Stack Exchange
bash
- インストールと設定の備忘録(第二部): gdm 経由でログインすると .bash_profile が実行されない
- 直接この中で .bash_profile を呼び出す
- 冒頭の "#!/bin/sh" に "--login" オプションを付加する
しかし今回はもっと簡単に、せっかくこの中で "$HOME/.profile" が呼び出されているのだから、このファイルの中で ". $HOME/.bash_profile" することにした。これで、しばらく様子を見ることにする。
- ~/.profile
if [ -n "$BASH_VERSION" ]; then # include .bash_profile if it exists if [ -f "$HOME/.bash_profile" ]; then . "$HOME/.bash_profile" fi fi
- これは、Debian Squeezeでは効果がなかった
- /etc/gdm3/Xsession
test -f "$HOME/.bash_profile" && . "$HOME/.bash_profile"
- PATH=... などは設定されるが、「/usr/bin/screen -d -RR -U」は実行されない
- GUI上でターミナルを開いても、screenセッションを奪わないので逆に便利と言えるかも知れない
- PATH=... などは設定されるが、「/usr/bin/screen -d -RR -U」は実行されない
- bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまい棒blog
screen
- Let's use SCREEN!
- screenで覚えたことメモ - 半無限長キープ
- ほえほえ screen
- GNU screen いろいろまとめ。 - naoyaのはてなダイアリー
- screen: Cannot open your terminal '/dev/pts/0' - please check. - それ
- sample of .screenrc -> source:/lab.git/TipAndDoc/.screenrc
- http://svn.ac-room.org/flast/browser/rc/.screenrc
- written by @Flast_RO
- Putty設定メモ - masahilog
端末 => 高度な設定 => Alternate端末画面への切り替えを無効にするにチェック
- puttyとscreenとvimと・・・ (#`Д´)ゴ---!! - Victoreemの日記
favorite shortcut
- エスケープキーを Ctrl+X(C-x)とする
- ウィンドウ変更
- C-x Space / C-x Backspace または C-x n / C-x p(前後)
- C-x 0 / C-x 1 ... (番号指定)
- Copy mode
- C-x Esc (もう一度Escで終了)
- ウィンドウ名の変更
- C-x Shift+A (thanks to twitter:ayokura/status/126956273659944960)
screen with script command
- screen と script を同時に「.bash_profile」内に書くことは出来ない
- scriptを先に書いた場合、scriptからexitした後でscreenが起動する
/usr/bin/script ~/.script/`date +%y-%m-%d_%H%M%S`.log /usr/bin/screen -d -RR -U
- Script started, file is XXXX -> $ exit -> Script done -> new screen... -> [screen is terminating]
- screenを先に書いた場合、screenがterminateした後でscriptが起動する
/usr/bin/screen -d -RR -U /usr/bin/script ~/.script/`date +%y-%m-%d_%H%M%S`.log
- [screen is terminating] -> Script started, file is XXXX -> $ exit -> Script done
- scriptを先に書いた場合、scriptからexitした後でscreenが起動する
logging to file on screen
- .screenrc に以下のように書く
logfile /home/mitty/.screen/logfile%Y%m%d%c.%n deflog on
- logfile ~/.screen~~ の様に相対パスでは不可?(調査中
- パーセントパラメタの詳細が知りたい
- 「logfile20090917 2:07.0」の様なファイルが出来る。
- => attachment:screen.c#L2396
%d -> 2桁 日(01~31) %D -> 3桁 曜日(Sun~Sat) %m -> 2桁 月(01~12) %M -> 3桁 月(Jan~Dec) %y -> 2桁 年 %Y -> 4桁 年 %a -> am / pm %A -> AM / PM %s -> 2桁 秒(00~59) %c -> sprintf(p, zeroflg ? "%02d:%02d" : "%2d:%02d", tm->tm_hour, tm->tm_min); %C -> sprintf(p, zeroflg ? "%02d:%02d" : "%2d:%02d", (tm->tm_hour + 11) % 12 + 1, tm->tm_min); %H -> HostName %n -> win->w_number
daemonize
- twitter:mittyorz/status/6727002820186112
- zshでは「$ command &!」が使える
- bashでは不可
tmux
- tmuxでscreenのlogに相当する機能を実現する - 接続法第三式
シェルの側が tmux を識別してログを取る命令を送り,日付が変わったところで cron が回ってログの保存先を変える.
- ~/.zshrc
if [ "${TMUX}" != "" ] ; then tmux pipe-pane 'cat >> ~/.tmux/`date +%Y-%m-%d`_#S:#I.#P.log' fi
- ~/.zshrc
Attachments (1)
-
screen.c
(69.1 KB) -
added by mitty 15 years ago.
via 4.0.3-7ubuntu1/screen.c
Download all attachments as: .zip