コーセラでLinuxを学ぶ

# Hands-on Introduction to Linux Commands and Shell Scripting
## 理由・背景
Linuxをしっかり学ぼうと思ってコーセラで講座を選びました。
月額サブスクリプションに入ってないのでがっかりですが・・・仕方がないです。
かつて自分でまとめたLinuxコマンド
https://qiita.com/JoeB/items/db24e22299747b031534
## いつもあと一歩ってところだから
必要十分を目指したいと思います。
## 特記事項
Vi使うの本当に面倒でならない・・・
使わないっていう結論にしようかと思う、
'だと変数を展開しない。
```
echo "文字列" > file.txt
echo '#! /bin/bash' >> backup.sh
echo 'VAR=`date`' >> backup.sh
echo 'date=$(date "+%F")' >> backup.sh
echo 'backupfile="backup-$date.tar.gz"' >> backup.sh
echo 'find ./ -mtime -1 | xargs tar zcvf $backupfile' >> backup.sh
```
⬛️実務でVi使った方が便利な例、元々のファイルを少し置換して使っていく場合。
補強で紹介したところと下記の情報があればうまくいくかも。
:%s/置換対象文字列/置換後文字列/g
## 第1週目　Introduction to Linux
⬛️シラバス・サマリー
⬛️ 用語
・カーネル（kernel）とは、
オペレーティングシステム（OS）の基本機能の役割を担うソフトウェアを指します。 カーネルは、OSの中でも特に中核的なプログラムであり、ハードディスクやメモリなど、コンピュータの資源管理を行なっています。 カーネルは、アプリケーションの実行を許可し、プロセス管理を行います。
⬛️  Take Away
~ Home directory
/ Root directory
### 感想
多くを望んでもね。
いいんじゃないかとは思いますけどね。
他のテキストなどでも補強した方がいいかも。
実務でやっているGitBashがコマンドインストールがすごいやりにくいものだということがわかりました。

## 第2週目　Introduction to Linux Commands
⬛️シラバス・サマリー
Informational Commands
File and Directory Navigation Commands
File and Directory Management Commands
Viewing File Content
Customizing View of File Content
File Archiving and Compression Commands
Networking Commands
⬛️   用語
The “echo” command prints string or variable values 

The “cat” and “tail” commands display file contents 

You can get user information with the "whoami" and "id" commands 

You can check system disk usage using the "df" command 

The “ls” command lists all files and directories contained within a specified directory tree 

The “cd” command allows you to navigate directories 

The “touch” command allows you to create a file or update its last–modified timestamp 

The “mkdir” command creates directories and “rmdir” deletes empty directories 

You can determine line, word, and character counts with “wc” 

You can use “grep” to get the lines of a file matching your desired criteria 

The “tar” command decompresses and unpacks a “tar.gz” archive 

You can view network configuration with “hostname” and “ifconfig” 
⬛️   Take Away
echo $a
ls -la *.txt


### 感想と補強
テストは一回で合格したが、お金を払ってるので・・・
間違ったところは見返そうと思う。
コマンドについて英語で説明があるのはさすが、あちらの文化・・・Linux自体はフィンランド人ば開発したかもしれないが・・・・Linux環境はツールとして使えるのはありがたいかも。

#### 補強
これだけだと足りないかも。
https://language-and-engineering.hatenablog.jp/entry/20121207/p1
Dojo Basic: Lab1-1 コマンドの基礎
↑ ここまで学んだことにする。
Dojo Basic Lab2-1 vi基礎
https://ibm-developer.connpass.com/event/189322/

## 第3週目　Introduction to Shell Scripting
⬛️ シラバス・サマリー

A shell script is an executable text file that begins with a ‘shebang’ interpreter directive 

Shell scripts are used to run commands and programs and can interpret command line arguments 

Filters are shell commands, and the pipe operator allows you to chain filter commands 

Shell variables can be assigned values with ‘=’ and listed using ‘set’ 

Environment variables are shell variables with extended scope; create with ‘export,’ list with ‘env’ 

Jobs can be scheduled to run periodically at selected times 

‘m h dom mon dow command’ is the cron job syntax 

Command substitution is used to replace a command with its output 

The Bash shell-scripting feature ‘concurrent mode’ allows commands to run in parallel 

⬛️用語
shebang Linux等で実行されるシェルスクリプトにおいて先頭についている #!

⬛️  Take Away
shell Basic
touch hello_world.sh
echo '#! /bin/bash' >> hello_world.sh 
echo 'echo hello world' >> hello_world.sh
ls -l hello_world.sh 
chmod +x hello_world.sh 
./hello_world.sh ← ENTER


・クーロンについての記事
https://www.kagoya.jp/howto/it-glossary/server/cron/