初めての場合は、ターミナルがメニューの奥に隠れているから
以下のような操作で探してみてください。
fn + F4 その他 のグループに ターミナルがある。
アイコンをダブルクリック
起動したら、ドッグのアイコンを右クリックして、オプション/ドッグに追加
でドッグに追加すると、次からはドッグから起動できる。
ターミナルの終了は、control + d でプロセスを終了し
command + q でターミナルを終了させる。
ターミナルの終了は、開いて居る全てのターミナルが終了するので注意
> exit
でプロセス終了
grep : キーワード検索
$ grep -n '嘉之' *.txt
awk : 行別の検索・集計
sed : 文字別検索・置換
$ sed 's/検索文字/置換文字/g' file
$ sed '/^$/d' file ## file から 空白行を削除する
$ sed -n '/href/p' index.html
who : ログイン中のユーザーを検索
$ who
yonmon console Sep 22 16:39
yonmon ttys000 Sep 22 22:14
yonmon ttys001 Sep 22 22:35
w
$ w
9:05 u
p 1 day, 1:57, 3 users, load averages: 1.19 1.14 1.15
USER TTY FROM LOGIN@ IDLE WHAT
yonmon console - 木16 16:25 -
yonmon s000 - 木22 - emacs
yonmon s001 - 木22 38 -bash
emacs : 最強のテキストエデイタ
とにかく覚えるまでが大変だが、複数ウィンドを表示させて、
shellモードでの確認などもできる。
新しいデータの作成、他のデータとの部分結合や編集に向いている。
コマンドの履歴などをemacs に取り込める。
vi : 行削除や置換もできるテキストエデイタ
Esc キーでコマンドと編集を区別する。
使いこなせれば、編集作業ではemacsより最強かも
どのPCでも使える。
ed : 一行修正のテキストエデイタだが、複数行を一度に
削除なんてことも可能
$ ed -s file < edmemo > output
edmemoに ed の 検索キーを入れておくと仕事が早い。
例えば、 2018というキーワードを含む行を検索したファイルを作るとしよう。
file から 2018のキーを抜き出して 2018serch.txtというファイルを作る。
$ ed
P
*
a
, g/2018/
.
* w ./ed2018
*! cat ed2018
, g/2018/
!
*q
$ ed -s file < ed2018 >2018serch.txt
$ cat 2018serch.txt
例えば、 2018と検索したファイルでは
去年と比較すると、2018年という年は
2018 ## 2016-2018までの9月を表示
$
ed 専用ページ
cal : カレンダー表示
$ cal 9 2016 ; cal 9 2017 ; cal 9 2018 ## 2016-2018までの9月を表示
$ cal 2020 ## 2020年のカレンダー
$ cal -m 9 ; cal -jm 9 ##9月のカレンダーと元旦からの日数
date :現在の日時を表示
$ date "+%x %H:%M"
2016/09/23 20:30
bc : 簡易計算器
$ bc
$ 2 + 3
$ 5
$ 2 * 3 - 2 * 4
$ -2
$ quit
$ echo '23 + 45' | bc
68
dc : 計算器 結果はスタックに入るのでPで表示
[例]
$ 23 44 56 + ##(23+44+56)の意味
$ p
$ 100 ## 2つの数値のみ計算するので 44 + 56 の結果
$ 45 +
$ 145 ## pはスタックの値の表示 先ほどpで100がスタック
に入っていたので、 45 + 100(s)=145 が計算できる
(s)スタックの意味
$ q ## 終了
maxima : 微積分・マトリクス・因数分解など何でもこなす
ここでは、簡易計算のみ紹介
$ maxima
(%i1) i: 入力の意味 1 + 3; 必ず;を入れる
(%o1) o: 出力の意味 4
(%i2) 23 / 34;
(%o2) 23 | 34
(%i3) 402 / 124 ;
(%o3) 201 | 62
(%i4) quit();
> x <- 10:30 # x を 10から30までの行列とする
> x
[1] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
> x^3-x^2
[1] 900 1210 1584 2028 2548 3150 3840 4624 5508 6498 7600 8820
[13] 10164 11638 13248 15000 16900 18954 21168 23548 26100
> sqrt(x)
[1] 3.162278 3.316625 3.464102 3.605551 3.741657 3.872983 4.000000 4.123106
[9] 4.242641 4.358899 4.472136 4.582576 4.690416 4.795832 4.898979 5.000000
[17] 5.099020 5.196152 5.291503 5.385165 5.477226
> q()
Save workspace image? [y/n/c]: yes
yes
clisp : common lisp
虚数計算も可能
$ clisp
[1]> (sqrt 3)
1.7320508
[2]> (sqrt -1)
#C(0 1)
[3]> (+ 23 45 66)
134
[4]> (+ #c(10 20) #c(30 40))
#C(40 60)
[5]> (/ 100 #c(30 40))
#C(6/5 -8/5)
[6]> (* 365 24 60 60)
31536000
[1]> (setq x 234)
234
[2]> (/ x 23)
234/23
[3]> (/ x 3)
78
[4]> (/ x 5)
234/5
[10]> (expt 2 900)
84527124981706439416374365586642657043015572165779443
54047371344426782440907597751590676094202515006314790
31989211405886211756095204296859600862365540703323053
41869439840813466997042828228230568483877265313790144
66368452684024987821414350380272583623832617294363807
973376
[11]> (mod 12 5)
2
[7]> (exit)
$ alias lf='ls -lF'
$ alias aliasの設定確認
$ unalias aliasname aliasの指定削除
/User/midir/Documents/ など いつも使うフォルダは
$ alias doc='cd /User/mydir/Documents/'などに設定すると
$ doc
だけで、Documents に移動できる。
$ chmod 755 file
$ sftp user@ wwwServer.openserver.ne.jp
Connected to wwwServer.openserver.ne.jp
Name (wwwServer.openserver.ne.jp :MOOYonKON): USeRS
Password required for USeRS
Password:
User USeRS logged in
Remote system type is UNIX.
Using binary mode to transfer files.
sftp> pwd
Remote directory: /home/USeRS
sftp> cd www
250 CWD command successful
sftp> pwd
Remote directory: /home/USeRS/www
sftp> !pwd
/Users/MOOYonKON
sftp> !ls (lls)
unix_command.html
sftp> put unix_command.html
local: unix_command.html remote: unix_command.html
Entering Extended Passive Mode
Opening BINARY mode data connection for unix_command.html
Transfer complete
xxxx bytes sent in 00:00 (xxx.xx KiB/s)
sftp> ls -l
Entering Extended Passive Mode
Opening ASCII mode data connection for file list
-rw----r-- 1 USeRS users 15249 Mon 25 11:11 unix_command.html
sftp> close
Goodbye.
sftp> exit
二つのファイルの相違点を表示してくれる
$ diff 1.txt 2.txt
0a1
> 2016年 9月24日 土曜日 17時31分59秒 JST
$
$ cat 1.txt
17:35
$ cat 11.txt
17:25
$ diff 1.txt 11.txt
1c1
< 17:35
---
> 17:25
kill :
killとは、プロセスの停止
$ ps
3612 pts/1 00:00:01 bash
3678 pts/1 00:00:00 xeyes
$ kill 3678
$ps
3612 pts/1 00:00:01 bash
last :
$ last
yonmon ttys003 Fri Sep 23 07:12 - 07:14 (00:01)
yonmon ttys001 Thu Sep 22 22:35 still logged in
yonmon ttys000 Thu Sep 22 22:14 still logged in
yonmon ttys003 Thu Sep 22 22:11 - 22:11 (00:00)
yonmon ttys003 Thu Sep 22 22:10 - 22:10 (00:00)
yonmon ttys000 Thu Sep 22 16:40 - 22:13 (05:33)
yonmon console Thu Sep 22 16:39 still logged in
yonmon ttys000 Thu Sep 22 07:08 - 16:37 (09:29)
yonmon console Thu Sep 22 07:08 - 16:38 (09:30)
reboot ~ Thu Sep 22 07:07
shutdown ~ Thu Sep 22 07:05
wtmp begins Thu Sep 22 07:05
source :ファイル変更後の再読み込みで変更箇所を有効にする時に使う
.bashrc に alias を書き込んだ後、すぐに再読み込みして確認するには
$ source .bashrc
test : 条件判定 真:0 偽:1 を echo $? で確認する
$ test -f index.html ## ファイル index.html があるか?
$ echo $? ## 結果を表示
$ 0 ##今のディレクトリに存在する
$ uname -a
Darwin ja1nku-2.local 15.6.0 Darwin Kernel Version 15.6.0:
Mon Aug 29 20:21:34 PDT 2016;
root:xnu-3248.60.11~1/RELEASE_X86_64 x86_64
$ w
23:29 up 1 day, 16:22, 3 users, load averages: 1.31 1.33 1.30
USER TTY FROM LOGIN@ IDLE WHAT
yonmon console - 木16 30:49 -
yonmon s000 - 木22 - emacs
Bonmon s001 - 木22 52 -bash
wc :
$ ls -l | wc -l ファイル数を数える
read : キーボードからの入力を変数に入れる
bash-3.2$ read a b c
12 33 44
bash-3.2$ echo a b c
a b c
bash-3.2$ echo $a $b $c
12 33 44
bash-3.2$ read a b
22 44
bash-3.2$ echo $[$a+$b]
66