忍者ブログ

[PR]

2025年01月19日 ()
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

here document

2008年09月27日 (linux)

数行の簡単なスクリプトやファイルならヒアドキュメントで作るのが便利である.まずは最小構成のスクリプトをヒアドキュメントで書くと.

% cat <<EOF >HEREDOC
> #!/bin/sh
> 
> #test script
> 
> echo "testes"
> EOF

出力先ファイルHEREDOCの中身は

#!/bin/sh

#test script

echo "testes"

のようになる.問題なさそうだ.
次に変数やコマンド展開などの入ったスクリプトをヒアドキュメントで書くと.

% cat <<EOF >HEREDOC2
> #!/bin/sh
> 
> #test script 2
>      
> for i in `ls`
> do
> cat -n $i
> done
> EOF

出力先ファイルHEREDOC2の中身は

#!/bin/sh

#test script 2

for i in .
..
do
cat -n 
done

`ls -a`$iが展開されている.
これを防ぐために

% cat <<EOF >HEREDOC2
> #!/bin/sh
> 
> #test script 2
>      
> for i in \`ls\`
> do
> cat -n \$i
> done
> EOF

のようにバックスラッシュでエスケープすることもできるが・・・

% cat <<'EOF' >HEREDOC2
> #!/bin/sh
> 
> #test script 2
>      
> for i in `ls`
> do
> cat -n $i
> done
> EOF

とすると展開されないのでより賢い&スクリプトの可読性が高い.

PR

install sylpheed from source

2008年09月23日 (linux)

sylpheedとは

オープンソース,マルチプラットフォーム対応のメーラーである.
http://sylpheed.sraoss.jp/ja/

主な特徴

  • 分かり易いUI,軽快な動作.
  • アドレス帳インポート機能あり,エクスポート機能なし.
  • mboxファイルによるメールインポート,エクスポート機能あり.

インストール

まずはyumを使ってお手軽なインストールを試みる.
sylpheedのパッケージがあるか確認.

# yum list | grep sylpheed
# 

出力がないのでどうやらyumパッケージはないようだ.
ソースからビルドしてインストールすることにする.

# cd /usr/local/src
# wget http://sylpheed.sraoss.jp/sylpheed/v2.5/sylpheed-2.5.0.tar.gz
# tar zxvf sylpheed-2.5.0.tar.gz
# cd sylpheed-2.5.0
# less INSTALL

INSTALL.jaもあったが文字化けするので英語版を見る.どうやら
./configure->make->make install
の順番で良さそう.さっそく・・

# ./configure
# make
# make install

エラーもなく無事にインストールできた.

動作確認

とりあえず起動の確認だけしておく,アカウントの設定とかはあとでお茶でも飲みながらすることにする.

# exit
% sylpeed &

無事起動できた.

install w3m from yum

2008年09月19日 (linux)

w3m

スクリーンブラウザ.
スクリーン上で起動するので非常に動作が軽快,スクリーンブラウザながら最近は画像も表示できる.

インストール

# yum install w3m.i386
  • w3m.i386-0.5.1-15.el5

がインストールされる.
ついでにw3mの画像表示プログラムw3m-img.i386もインストール.

# yum install w3m-img.i386
  • w3m-img.i386-0.5.1-15.el5

がインストールされる.

テスト

% rehash
% w3m http://www.google.co.jp/

グーグルのトップページのロゴが表示された.
せっかくなので記念写真.一度w3mを終了させて.

% (sleep 10; import -window urxvt -quality 100 w3m_withimg.jpg) &
% w3m http://www.google.co.jp/

10秒待つとカレントディレクトリに仮想ターミナル(ここではurxvt)のスクリーンショット(w3m_withimg.jpg)が生成される.
記念写真

diff: patch

2008年09月10日 (linux)

command

% cat >patchtest.old
aaa
bbb
ccc
% cat >patchtest.new
aaa
xxx
ccc
% ls
patchtest.new  patchtest.old  patchtest.txt
% diff patchtest.old patchtest.new 
2c2
< bbb
---
> xxx
% diff -c patchtest.old patchtest.new 
*** patchtest.old	2008-09-09 20:53:01.000000000 +0900
--- patchtest.new	2008-09-09 20:53:17.000000000 +0900
***************
*** 1,3 ****
  aaa
! bbb
  ccc
--- 1,3 ----
  aaa
! xxx
  ccc
% diff -c patchtest.old patchtest.new >patchtest.patch
% patch <patchtest.patch 
patching file patchtest.old
% diff patchtest.old patchtest.new   
% 

note

cf.
% man patch
% man diff

date: format

2008年09月05日 (linux)

command

# date 0905044308                   # 08/09/05 04:43にシステム時間を設定
Fri Sep  5 04:43:00 JST 2008
# exit
% date +%y%m%d%H%M                  # 表示形式を指定して実行
0809050443
% alias dates='date +%y%m%d%H%M'    # エイリアス設定
% dates
0809050443
% touch `dates`.txt                 # 現在時刻+.txtという空のファイルを作成
% ls 
0809050443.txt
% 

note

cf.
% man date