実行できるようにするには、二つの方法がある。
まずは、ftpで転送する場合、asciiモードで送信する。テキストファイルは asciiでもbinaryでも表示には問題ないが、改行コードがwindows式のCR+LFではスクリプトとして実行できない。asciiモードで送信すると、改行コードを変換してくれる。
もし、FTPで送受信していないとかで再受信できない場合は、nkfコマンドを使う。これは改行コードや文字コードを変換してくれるコマンドである。
nkf -Lu windows.txt > linux.txt
とやると、改行コードがCR+LFからLFに変換される。nkfコマンドにはほかにもいろいろオプションがあるので確認されたし。
ヒマなのでlinuxコマンドリファレンスに載っているコマンドを片っ端から使ってみた。そして発見したこと。
scriptで記録したログの制御コードを除くには、
cat log.txt|col > log2.txt
でよい。viで %s/^M//g とかやらなくても。
diff3 というコマンドは3つのファイルを比較できる。
diff -u で、結果をunified型式で出力できる。
cmp バイナリファイルの比較。差がなければ何も表示されない。
netstat -r は route と同じ。
grep -v word は、指定した語に一致しない行を出力
grep -i word は、指定した語の大文字小文字を区別せずに検索
lha もある。
bzip2 最近ちょくちょく見かけるが、圧縮率がgzipより高い。が、時間もかかるようだ。
ちなみに lhaはgzipよりちょっと圧縮率が高いようだ。
pushd/popd の使い方。あるディレクトリに居て、一時的にディレクトリを変更してすぐ戻りたい場合に、
pushd /home/aiueo
popd
とやると、戻ってこれる。
Makefile の書き方
TARGET = myfile all: $(TARGET) clean: rm myfile myfile: gcc -o myfile myfile.c
myfile.cをコンパイルしてmyfileという名前の実行ファイルを作る。
users ログインユーザの一覧
w でもわかるけど余計な情報がつく
wget ミラーサイトなどを作るときにディレクトリごとコピーできる(未確認)
arping リモートホストにarp requestを送信する。
strings filename 指定したファイル内の文字列を表示する。使ったことはあったが意味を知らなかった。
pstree psの階層表示。どんなときに使うのかは知らないが。
alias コマンドやオプションに別名をつける。
lastlog って実行ファイルだった。いつもログファイルと思ってエディタで開いてしまう。
write username 指定したユーザにメッセージを送る。 write 文字列 ではない。
bmtoa/atobm ビットマップとはWindowsで使う画像のbmpファイルではなく、アイコンなどにつかういわゆる1bitの画像ファイルらしい。使い方はよくわからない。
cjpeg/djpeg/jpegtran jpegの画像変換。回転や反転もできる。
convert 画像のファイル変換、回転