Last Update: 2022-03-20 (日) 19:45:25 (1008d)
FrontPage / Unix

Unix的内容

OS、ディストリビューションに問わないメモなど。

Unix的なメモ全般

RCS に関するメモ

RCS memo(In Japanese)

関連するrcsコマンド

  rcs, ci, co, rcsdiff, rcsmerge, rlog

rcsdiff

rcsdiffは差分を表示するが、基本的にはdiffの機能をそのまま使用しているため、diff固有のオプションが利用可能。

例)

尚、'-u' はdiffのオプションである。そのほかにも '-c'といったオプションも利用されるだろう。

vim でJIS等日本語

/.vimrc

" ファイルの漢字コード自動判別のために必要。(要iconv)
if has('iconv')
 let s:enc_euc = 'euc-jp'
 let s:enc_jis = 'iso-2022-jp'
 " iconvがJISX0213に対応しているかをチェック
 if iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb"
   let s:enc_euc = 'euc-jisx0213'
   let s:enc_jis = 'iso-2022-jp-3'
 endif
 " fileencodingsを構築
 let &fileencodings = &fileencodings .','. s:enc_jis
 set fileencodings+=utf-8,ucs-2le,ucs-2
 if &encoding =~# '^euc-\%(jp\|jisx0213\)$'
   set fileencodings+=cp932
   let &encoding = s:enc_euc
 else
   let &fileencodings = &fileencodings .','. s:enc_euc
 endif
 " 定数を処分
 unlet s:enc_euc
 unlet s:enc_jis
endif

大量のファイルの処理

シェルが処理できなくなった場合、

rm -rf hoge* Argument list too long. 

のようなエラーを返す。そこで、xargsを使うことにより回避。

 echo hoge* |xargs rm -rf

特定拡張子のファイルサイズの総容量の集計

$ find . -name "*.tar.gz" -printf "%s\n" |awk '{t += $1}END{print t}'

これでも良いんじゃないの?

GNU coreutils がインストールされていれば、これでいけます。

(OS、ディストリビューションを問わず、GNU coreutilsをソースコードからビルドしてインストールすれば良いのです。)

du -c -b *.tar.gz

サブディレクトリ以下のディレクトリパーミッションの変更方法

find ./ -type d | xargs -n1 chmod g+w

atコマンドで自動シャットダウン

# echo "/sbin/shutdown -h now" |at 07:30 11/10/2007
MM/DD/YYYY 書式となる。
TOPページへ戻るページの更新   ページの編集新しいページの作成新しい下位ページの作成そのページを引用して新規作成そのページにファイルの添付ページの削除ページ名の変更前回の編集内容の表示ページの凍結バックアップページの参照ページへのリンク元を表示   サイトのページ一覧サイト内単語検索編集したページの履歴削除したページの履歴   別ウィンドウでマニュアルページへ