Linux シェル:基本

シェルã¨ã¯

UNIXコマンドインタプリタ
ï¼ã‚³ãƒžãƒ³ãƒ‰(命令)を解釈ã€ã‚«ãƒ¼ãƒãƒ«ã¸ä¼é”ã™ã‚‹ãƒ—ログラム
カーãƒãƒ«ã‚’åŒ…ã‚€ã‚·ã‚§ãƒ«ã‚¿ãƒ¼ã®æ„味
bashã€zshã€tcshç­‰ã®ã‚·ã‚§ãƒ«ãŒä¸€èˆ¬çš„
å†åˆ©ç”¨å¯èƒ½ã«ãƒ•ァイル化ã—ãŸã‚·ã‚§ãƒ«ã‚’シェルスクリプトã¨å‘¼ã¶

利点

ãƒ»å±¥æ­´ãŒæ®‹ã‚‹(呼ã³å‡ºã—å¯èƒ½)
・軽ã„
・リダイレクトã€ãƒ‘イプ機能を使ã£ã¦è¤‡é›‘ãªå…¥å‡ºåŠ›ãŒå¯èƒ½
・自動化ãŒå®¹æ˜“

èµ·å‹•

echo $shell

起動シェル確èª

起動シェル変更

chsh
例) new shell ~: /bin/bash

シェルコマンド一覧

for x in ${PATH//:/ } do ls -l $x done | sort | uniq

for x in ${PATH//:/ }
do
 ls -l $x
done
| sort
| uniq

標準入力・標準出力

標準(=ç”»é¢)
ç”»é¢ã‹ã‚‰å…¥åŠ› ⇒ ç”»é¢ã¸å‡ºåŠ›
$ ls

リダイレクト

入力・出力を標準ã‹ã‚‰åˆ¥ã®ãƒ¡ãƒ‡ã‚£ã‚¢ã¸åˆ‡ã‚Šæ›¿ãˆ

・画é¢ã‹ã‚‰å…¥åŠ› ⇒ ファイルã¸å‡ºåŠ›
$ ls > list ※上書ã
$ ls >> list ※追加
・ファイルã‹ã‚‰å…¥åŠ› ⇒ ç”»é¢ã¸å‡ºåŠ›
$ ls < list ※上書ã
$ ls << list ※追加

パイプ処ç†

ã‚る命令ã«ã‚ˆã‚‹å‡ºåŠ›ã‚’ã€åˆ¥ã®å‘½ä»¤ã®å…¥åŠ›ã¸ã¨ç¹‹ã
「|ã€ã§ç¹‹ã
Linuxã§ã¯ã€Œâ†‘ã€ã‚­ãƒ¼ã§å‰å›žã®ã‚³ãƒžãƒ³ãƒ‰ã‚’呼ã³å‡ºã›ã‚‹ã®ã§å‘¼ã³å‡ºã—&パイプã§ã€
ç°¡å˜ã«è¿½åŠ ã®å‡¦ç†å‘½ä»¤ã‚’記述ã§ãã‚‹

$cat /etc/passwd
⇒passwdã®ä¸­èº«ãŒç”»é¢ã«è¡¨ç¤ºã•れる

passwdã®ä¸­èº«ã‚’grepã¸ã®å…¥åŠ›ã¨ã™ã‚‹
grepã§ã¯ã€Œ/binã€ã‚’å«ã‚€è¡Œã®ã¿ã‚’抽出

$ cat /etc/passwd | grep /bin

↑を更ã«cutã¸ã®å…¥åŠ›ã¨ã™ã‚‹
cutã§ã¯æ–‡å­—列を':'ã§åˆ†å‰²ã—ã€ï¼‘番目ã®åˆ—ã®ã¿æŠ½å‡º

$ cat /etc/passwd | grep /bin | cut -d ':' -f 1

↑を更ã«sortã¸ã®å…¥åŠ›ã¨ã™ã‚‹
sortã§ã¯æ–‡å­—列をアルファベット順ã«ã‚½ãƒ¼ãƒˆ

$ cat /etc/passwd | grep /bin | cut -d ':' -f 1 | sort

↑を更ã«wcã¸ã®å…¥åŠ›ã¨ã™ã‚‹
wcã§ã¯æ–‡å­—列ã®è¡Œæ•°ã‚’å–å¾—

$ cat /etc/passwd | grep /bin | cut -d ':' -f 1 | sort | wc -l
⇒行数ã®ã¿ç”»é¢ã¸è¡¨ç¤ºã•れる

Follow me!

å‰ã®è¨˜äº‹

Linux é‡è¦ç”¨èªž