csh
![オプション] ! : 1 つ前のヒストリバッファの内容をコマンドとして実行します. 文字列 : ヒストリバッファを新しいほうから順に比較して行き,文字列 分一致したものをコマンドとして実行します. -数字 : (現在のコマンド番号-数字)で指定されたヒストリバッファの内容 を実行します. 数字 : 数字で示されたヒストリバッファの内容を実行します.
!!
!ls
!-1
!10
@ var operator 式 var : 値を設定する変数名 operator : 演算子 式 : 設定すべき値を計算する式
alias [command [string]] command : 新しく作成するコマンドの名前 string : 上のコマンドで実行するコマンド
alias dirx 'ls -la' というコマンドを実行しておけば, dirx と入力することによって, ls -la と入力した場合と同じ結果が得られます.
bg [%job-no | command] ... job-no : job 番号.job 番号は「 jobs 」コマンドで取得できます. command : コマンド名
fg [%job-no | command] ... job-no : job 番号.job 番号は「 jobs 」コマンドで取得できます. command : コマンド名
history
jobs [-l] -l : プロセス ID も出力します
$n,$argv[n] : n 番目の引き数 $#argv : 引き数の数 $*,$*argv : すべての引き数をまとめて参照
set [var[=value]] var : 値を設定する変数名 value : 設定すべき値
set prompt = "suganuma%>"
echo $path
set colors = (red green yellow)
setenv [var [value]] var : 値を設定する環境変数名 value : 設定すべき値
==, !=, >, >=, <, <=, &&, || -e file : ファイルが存在していれば真 -r file : ファイルが読み取り可能ならば真 -w file : ファイルが書き込み可能ならば真 -x file : ファイルが実行可能ならば真 -d file : ファイルで指定した内容がディレクトリならば真
1)if if ([条件式]) then [処理1] else [処理2] endif 2)switch switch ([変数]) case [内容1]: [処理1] breaksw case [内容2]: [処理2] breaksw .............. .............. default: [処理n] breaksw endsw 3)while while ([条件式]) [処理] end 4)foreach foreach [変数] ([リスト]) [処理] end
#!/usr/bin/csh
#
# Write to MS-DOS
#
if ($#argv == 0) then
echo No File Name !
else
if ($argv[1] == "-n") then
set count = 2
set isw1 = 0
else
set count = 1
set isw1 = 1
endif
while ($count <= $#argv)
if ($isw1 == 0) then
nkf -t $argv[$count] > 00temp00
else
nkf -s $argv[$count] > 00temp00
endif
set isw2 = `wc -w 00temp00 | awk '{print $1}'`
if ($isw2 != '0') then
mswrite /dev/rif/04 $argv[$count] < 00temp00
echo File $argv[$count] was written
endif
@ count++
end
unalias rm
rm 00temp00
alias rm 'rm -i'
endif
unalias command command : alias で設定したコマンド名
| 菅沼ホーム | 本文目次 | 演習問題解答例 | 付録目次 | 索引 |