シェルとは
黒い画面。ユーザーに対して、テキストベースのインタフェースを提供するプログラム。コマンドを入力することで、他のプログラムを実行することができる。
シェルにも色々な種類があるが、ここではbash
やzsh
と呼ばれるものを想定する。
プロンプト
infovis:~$
infovis
: デバイス名~
: カレントディレクトリ(home
の縮約形)$
: ルートユーザではない(ルートユーザは#
)
コマンド入力
infovis:~$ date
Thu Oct 10 07:36:18 JST 2024
infovis:~$
infovis:~$ echo hello
hello
infovis:~$ echo "My Files"
My Files
環境変数
シェルは、$PATH
という環境変数に含まれているディレクトリでプログラムの検索を行う。
infovis:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
infovis:~$ which echo
/bin/echo
infovis:~$ /bin/echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ディレクトリを移動する
infovis:~$ pwd
/home/infovis
infovis:~$ cd /home
infovis:/home$ pwd
/home
infovis:/home$ cd ..
infovis:/$ pwd
/
infovis:/$ cd ./home
infovis:/home$ pwd
/home
infovis:/home$ cd infovis
infovis:~$ pwd
/home/infovis
infovis:~$ cd -
infovis:/home$
infovis:~$ ../../bin/echo hello
hello
ディレクトリの中身を見る
infovis:~$ ls
infovis:~$ cd ..
infovis:/home$ ls
infovis
infovis:/home$ cd ..
infovis:/$ ls
bin
boot
dev
etc
home
コマンドの使い方を調べる
infovis:~$ ls --help
または
infovis:~$ man ls
ディレクトリの中身を詳しく調べる
ファイルの権限の読み方を調べてみる。
infovis:~$ ls -l /home
drwxr-xr-x 1 infovis users 4096 Jun 15 2019 infovis
ファイルやディレクトリに対する操作
infovis:~$ mv hello.txt hello2.txt
infovis:~$ cp hello2.txt hello.txt
infovis:~$ rm hello2.txt
infovis:~$ mkdir hola hallo
infovis:~$ rm -r hola
infovis:~$ rmdir hallo
プログラムをつなげる
infovis:~$ echo hello > hello.txt
infovis:~$ cat hello.txt
hello
infovis:~$ cat < hello.txt
hello
infovis:~$ cat < hello.txt > hello2.txt
infovis:~$ cat hello2.txt
hello
infovis:~$ ls -l / | tail -n1
drwxr-xr-x 1 root root 4096 Jun 20 2019 var
infovis:~$ curl --head --silent google.com | grep --ignore-case content-length | cut -d ' ' -f2
219
ファイルやディレクトリを開く
macOS
infovis:~$ open .
Windows
infovis:~$ explorer.exe .
Linux
infovis:~$ xdg-open .