More Related Content More from Hiramatsu Ryosuke More from Hiramatsu Ryosuke (12) Unix2. ⽬目次
1. UNIXとは?
2. UNIXコマンド
3. シェルスクリプト
4. UNIXの歴史
・1970年, AT&Tが始める
・マルチユーザ
・BSD系とSystem V系
・UNIX委員会の認証があって
初めて名乗れる
5. Linux
= PC用のUNIX
・でも最近はPC以外にも適⽤用されている。
(例例.
掃除機,
携帯,
⾃自販機)
・バザール⽅方式で開発される
・作ったのは、リーナス・トーバルスさん(1970年年頃)
7. Linux
のディストリビューション
1. Red Hat系
・Red Hat Enterprise Linux
企業向け。サポート万全。有料。
・Fedora
最新機能を搭載
・CentOS 勉強⽤用に
安定性重視。 おすすめ!
2. Debian系
・Ubuntu
UI使いやすい。最新機能搭載。
9. メタキャラクタ
*
:
任意の0⽂文字以上の⽂文字
?
:
任意の1⽂文字以上の⽂文字
[ab]
:
a
または
b
[0-‐‑‒9]:
[0123456789]
[^3-‐‑‒5]:
3-‐‑‒5以外の数字
{xyz,
abc,
ccc}
:
xyz,
abc,
ccc
のどれか
10. chmod
ファイルのパーミッションを変更更する
chmod
[オプション]
ファイル名/ディレクトリ名
dir 所有者
u
グループ
g 他のユーザ
o
-‐‑‒ r w x r w -‐‑‒ r -‐‑‒ x
7 6 5
r
=
4:
読み取り権限
ディレクトリの場合はd, w
=
2:
書き込み権限
ファイルの場合は
-‐‑‒ x
=
1:
実⾏行行権限
-‐‑‒R
オプションで,
フォルダ内全ての権限変更更
11. 基本UNIXコマンド
(1/2)
cp
[オプション]
元のパス
後のパス
オプション -R でフォルダごとコピーできる。
mv
[オプション]
元のパス
後のパス
ファイルの移動の他、名前変更にも使える。
12. 基本UNIXコマンド
(2/2)
grep
ʻ‘freeBSCʼ’
test.txt
検索文字列 ファイル名
sed
ʼ’s /元の⽂文字列列/後の⽂文字列列ʼ’
test.txt
‘編集モード / パターン1 / パターン2’ ファイル名
└ 【編集モード】s: 置換, d: 削除, p: 表示
awk
-‐‑‒F:
ʻ‘/^1/{print
$1,$2;}ʼ’
test.txt
区切り文字 対象となる行 / 処理内容 ファイル名
13. リダイレクトとパイプ
>
:
出⼒力力
<
:
⼊入⼒力力
>>
:
追加
|
:
左の結果を受けての右のコマンドの実⾏行行
grep ‘freeBSD’ test.txt | sed ‘s/freeBSD/freebsd’
14. ちょっと便便利利UNIXコマンド
便便利利だけどあまり使わないコマンド集
使い⽅方は
man
コマンドで調べよう.
ps ifconfig !! !?⽂文字列列?
cat netstat history crontab
less ping !n sleep
more alias !⽂文字列列 kill
└ 毎回読み込むようにするには、
ホームディレクトリの.bash_profileや
.profile に記述する
15. ちょっと便便利利
crontab
crontab
-‐‑‒e
:
スケジュールの編集
crontab
-‐‑‒l
:
スケジュールリストの表⽰示
【書式】 分
時
⽇日
⽉月
曜
実⾏行行書式
1分ごとに設定をチェックしにいってくれる。
バックアップ⽤用途などで重宝される!
18. シェルスクリプト
の書き⽅方
・先頭に #!/bin/sh
・# をつけたらコメント文
・変数は適当に使える
data1=100
echo “data1 = $data1”
・見やすいように字下げしてはダメ
20. シェルスクリプト
の書き⽅方(2)
・四則演算 バッククォートで囲むと
UNIXコマンド使える!
‘expr $x + $y’
・if文ももちろん使える
if [ s1 = s2 ]
then
echo “OK!”
elif [ s1 = s3]
echo “s3 OK!”
else
echo “NG!”
fi
21. シェルスクリプト
の書き⽅方(3)
・case文
case $x in
1) echo “ONE”
;;
2) echo “TWO”
;;
3|6|9) echo “OK”
;;
*) echo “NG”
;;
esac
22. シェルスクリプト
の書き⽅方(4)
・for文 ・while文
for i in 1 2 3 while [ $count -lt 6 ]
do do
echo “num : $i” echo “num : $count”
done done
-lt は比較演算子「<」のこと
23. シェルスクリプト
の書き⽅方(5)
・関数 定義と使い方
add() {
return ‘expr $1 + $2’
}
x=5
y=10
$? で直前の演算結果を
add $x $y 参照できる
result=$?
echo “$x + $y = $result”
24. シェルスクリプト
正規表現
.
:
任意の1⽂文字
*
:
直前の⽂文字の0回以上の繰り返し
+
:
直前の⽂文字の1回以上の繰り返し
?
:
直前の⽂文字を0回or1回
^
:
⾏行行の先頭
$
:
⾏行行の⽂文末
[]
:
[]内の任意の⽂文字 [a-‐‑‒z0-‐‑‒9],
[^3-‐‑‒4]など
26. ⽂文字コードの種類
・1バイトコード
-‐‑‒
アメリカとかで採⽤用
・マルチバイトコード
-‐‑‒
EUC-‐‑‒JP
//
FreeBSD他
UNIX系OS
-‐‑‒
Shift-‐‑‒JIS
//
Windows
&
Mac
-‐‑‒
UTF-‐‑‒8
//
Linux
-‐‑‒
ISO-‐‑‒2022-‐‑‒JP
//
メールデータ送受信のエンコード
27. リモート操作
平⽂文 暗号
リモート操作 telnet SSH
リモート
FTP SCP
ファイル操作