前回はソフトウェア・
これらのコマンドは前の結果を確認しながら対話的に実行していくこともできますが,
ユーザが作った新しいコマンドも,
かつて1台のUNIXマシンを複数のユーザが利用していたころは,
今までにも何度かシェルスクリプトの読み方を紹介しましたが,
Plamo Linuxのパッケージ管理システム
筆者がまとめ役をやっているPlamo Linuxでは元々のベースとしていたSlackwareのパッケージ管理システムを改良して利用しています。そのためパッケージをインストールするinstallpkgとインストール済みのパッケージを削除するremovepkgコマンドはあるものの,
少数のパッケージを更新するだけならばこれでも別に困らないのですが,
ちなみにPlamo-4.
updatepkgスクリプトを考える前に,
installpkgコマンドでパッケージ名を指定してパッケージをインストールすると,
% cat /var/log/packages/python PACKAGE NAME: python-2.6-i586-P1 COMPRESSED PACKAGE SIZE: 17855 K UNCOMPRESSED PACKAGE SIZE: 61720 K PACKAGE LOCATION: ./Python/python-2.6-i586-P1.tgz PACKAGE DESCRIPTION: FILE LIST: install/ install/doinst.sh usr/ usr/include/ usr/include/python2.6/ usr/include/python2.6/cellobject.h usr/include/python2.6/bytearrayobject.h ...
一方,
# removepkg rhythmbox Removing package rhythmbox... Removing files: --> Deleting symlink usr/lib/librhythmbox-core.so --> Deleting symlink usr/lib/librhythmbox-core.so.0 --> Deleting etc/gconf/schemas/rhythmbox.schemas --> Deleting usr/bin/rhythmbox ...
removepkgコマンドは/var/
updatepkgコマンドでは,
このような簡単な仕組みになっているので,