"Bash Checks"

echo "hi"
echo "Using conditional statement to create a project directory and project"

# Variable section
export project_dir=/home/prasithchilla  # change vscode to different name to test git clone
export project=$project_dir/FastPages  # change APCSP to name of project from git clone
export project_repo="https://github.com/BuddaBaker/FastPages.git"  # change to project of choice

cd ~    # start in home directory

# Conditional block to make a project directory
if [ ! -d $project_dir ]
then 
    echo "Directory $project_dir does not exists... making directory $project_dir"
    mkdir -p $project_dir
fi
echo "Directory $project_dir exists." 

# Conditional block to git clone a project from project_repo
if [ ! -d $project ]
then
    echo "Directory $project does not exists... cloning $project_repo"
    cd $project_dir
    git clone $project_repo
    cd ~
fi
echo "Directory $project exists."
Using conditional statement to create a project directory and project
Directory /home/prasithchilla exists.04l
Directory /home/prasithchilla/FastPages exists.l

Look inside Fastpages/Github page project

All computers contain files and directories. The clone brought more files from cloud to your machine. Using the bash shell you will see some commands that show and interact with files and directories.

"ls" lists computer files in Unix and Unix-like operating systems
"cd" offers way to navigate and change working directory
"pwd" print working directory
"echo" used to display line of text/string that are passed as an argument
echo "Navigate to project, then navigate to area where files were cloned"
cd $project
pwd

echo ""
echo "list top level or root of files with project pulled from github"
ls

echo ""
echo "list again with hidden files pulled from github"
ls -a   # hidden files flag, many shell commands have flags

echo ""
echo "list all files in long format"
ls -al   # all files and long listing
Navigate to project, then navigate to area where files were cloned
/home/prasithchilla/FastPages

list top level or root of files with project pulled from github
2022-05-15-07-21-16.png  _config.yml         images      Makefile    README.md
2022-05-15-07-24-25.png  docker-compose.yml  _includes   _notebooks  _sass
2022-05-15-07-25-15.png  FastPages           index.html  _pages      _word
_action_files            _fastpages_docs     _layouts    _plugins
assets                   Gemfile             LICENSE     _posts

list again with hidden files pulled from github
.                        .devcontainer.json  .gitignore  _pages
..                       docker-compose.yml  images      _plugins
2022-05-15-07-21-16.png  FastPages           _includes   _posts
2022-05-15-07-24-25.png  _fastpages_docs     index.html  README.md
2022-05-15-07-25-15.png  Gemfile             _layouts    _sass
_action_files            .git                LICENSE     _word
assets                   .gitattributes      Makefile
_config.yml              .github             _notebooks

list all files in long format
total 492[?2004l
drwxr-xr-x 17 prasithchilla prasithchilla   4096 Aug 30 15:30 .
drwxr-x--- 13 prasithchilla prasithchilla   4096 Aug 30 15:29 ..
-rw-r--r--  1 prasithchilla prasithchilla 207007 Aug 30 15:29 2022-05-15-07-21-16.png
-rw-r--r--  1 prasithchilla prasithchilla  90979 Aug 30 15:29 2022-05-15-07-24-25.png
-rw-r--r--  1 prasithchilla prasithchilla  81691 Aug 30 15:29 2022-05-15-07-25-15.png
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _action_files
drwxr-xr-x  4 prasithchilla prasithchilla   4096 Aug 30 15:29 assets
-rw-r--r--  1 prasithchilla prasithchilla   3654 Aug 30 15:29 _config.yml
-rw-r--r--  1 prasithchilla prasithchilla    420 Aug 30 15:29 .devcontainer.json
-rwxr-xr-x  1 prasithchilla prasithchilla   1136 Aug 30 15:29 docker-compose.yml
drwxr-xr-x 16 prasithchilla prasithchilla   4096 Aug 30 15:30 FastPages
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _fastpages_docs
-rwxr-xr-x  1 prasithchilla prasithchilla   1304 Aug 30 15:29 Gemfile
drwxr-xr-x  8 prasithchilla prasithchilla   4096 Aug 30 15:29 .git
-rw-r--r--  1 prasithchilla prasithchilla     84 Aug 30 15:29 .gitattributes
drwxr-xr-x  4 prasithchilla prasithchilla   4096 Aug 30 15:29 .github
-rw-r--r--  1 prasithchilla prasithchilla    161 Aug 30 15:29 .gitignore
drwxr-xr-x  3 prasithchilla prasithchilla   4096 Aug 30 15:29 images
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _includes
-rw-r--r--  1 prasithchilla prasithchilla    799 Aug 30 15:29 index.html
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _layouts
-rw-r--r--  1 prasithchilla prasithchilla  11351 Aug 30 15:29 LICENSE
-rwxr-xr-x  1 prasithchilla prasithchilla   1422 Aug 30 15:29 Makefile
drwxr-xr-x  4 prasithchilla prasithchilla   4096 Aug 30 15:29 _notebooks
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _pages
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _plugins
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _posts
-rwxr-xr-x  1 prasithchilla prasithchilla   3611 Aug 30 15:29 README.md
drwxr-xr-x  3 prasithchilla prasithchilla   4096 Aug 30 15:29 _sass
drwxr-xr-x  2 prasithchilla prasithchilla   4096 Aug 30 15:29 _word

echo "Look for posts"
export posts=$project/_posts  # _posts inside project
cd $posts  # this should exist per fastpages
pwd  # present working directory
ls -l  # list posts
Look for posts
/home/prasithchilla/FastPages/_posts
total 12
-rwxr-xr-x 1 prasithchilla prasithchilla 1966 Aug 30 15:29 2020-01-14-test-markdown-post.md
-rw-r--r-- 1 prasithchilla prasithchilla  380 Aug 30 15:29 2022-08-30-Secondmarkdown.md
-rw-r--r-- 1 prasithchilla prasithchilla  718 Aug 30 15:29 README.md

echo "Look for notebooks"
export notebooks=$project/_notebooks  # _notebooks is inside project
cd $notebooks   # this should exist per fastpages
pwd  # present working directory
ls -l  # list notebooks
Look for notebooks
/home/prasithchilla/FastPages/_notebooks
total 3120?2004l
-rw-r--r-- 1 prasithchilla prasithchilla 3162385 Aug 30 15:29 2020-02-20-test.ipynb
-rw-r--r-- 1 prasithchilla prasithchilla    1634 Aug 30 15:29 2022-08-28-bash.ipynb
-rw-r--r-- 1 prasithchilla prasithchilla    1155 Aug 30 15:29 2022-08-28-Fastpages-Post.ipynb
-rw-r--r-- 1 prasithchilla prasithchilla    1799 Aug 30 15:29 2022-08-28-NBAQUIZ.ipynb
drwxr-xr-x 2 prasithchilla prasithchilla    4096 Aug 30 15:29 ghtop_images
drwxr-xr-x 2 prasithchilla prasithchilla    4096 Aug 30 15:29 my_icons
-rw-r--r-- 1 prasithchilla prasithchilla     718 Aug 30 15:29 nbaquiz.py
-rw-r--r-- 1 prasithchilla prasithchilla     771 Aug 30 15:29 README.md

Look Inside Markdown File "cat" reads data from the file and gives its content as output

echo "Navigate to project, then navigate to area wwhere files were cloned"

cd $project
echo "show the contents of README.md"
echo ""

cat README.md  # show contents of file, in this case markdown
echo ""
echo "end of README.md"
Navigate to project, then navigate to area wwhere files were cloned
show the contents of README.md4l

[//]: # (This template replaces README.md when someone creates a new repo with the fastpages template.)

![](https://github.com/BuddaBaker/Fastpages/workflows/CI/badge.svg) 
![](https://github.com/BuddaBaker/Fastpages/workflows/GH-Pages%20Status/badge.svg) 
[![](https://img.shields.io/static/v1?label=fastai&message=fastpages&color=57aeac&labelColor=black&style=flat&logo=data:image/png;base64,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)](https://github.com/fastai/fastpages)

https://BuddaBaker.github.io/Fastpages/

# My Blog


_powered by [fastpages](https://github.com/fastai/fastpages)_


## What To Do Next?

Great!  You have setup your repo.  Now its time to start writing content.  Some helpful links:

- [Writing Blogs With Jupyter](https://github.com/fastai/fastpages#writing-blog-posts-with-jupyter)

- [Writing Blogs With Markdown](https://github.com/fastai/fastpages#writing-blog-posts-with-markdown)

- [Writing Blog Posts With Word](https://github.com/fastai/fastpages#writing-blog-posts-with-microsoft-word)

- [(Optional) Preview Your Blog Locally](_fastpages_docs/DEVELOPMENT.md)

Note: you may want to remove example blog posts from the `_posts`,  `_notebooks` or `_word` folders (but leave them empty, don't delete these folders) if you don't want these blog posts to appear on your site.

Please use the [nbdev & blogging channel](https://forums.fast.ai/c/fastai-users/nbdev/48) in the fastai forums for any questions or feature requests.

end of README.md

Env, Git and GitHub

Env(ironment) is used to capture things like path to Code or Home directory. Git and GitHub is NOT Only used to exchange code between individuals, it is often used to exchange code through servers, in our case deployment for Website. All tools we use have a behind the scenes hav relationship with the system they run on (MacOS, Windows, Linus) or a relationship with servers which they are connected to (ie GitHub). There is an "env" command in bash. There are environment files and setting files (.git/config) for Git. They both use a key/value concept.

"env" show setting for your shell "git clone" sets up a director of files "cd $project" allows user to move inside that directory of files ".git" is a hidden directory that is used by git to establish relationship between machine and the git server on GitHub.

echo "Show the shell environment variables, key on left of equal value on right"
echo ""

env
Show the shell environment variables, key on left of equal value on right

SHELL=/bin/bashl
PYTHONUNBUFFERED=1
project=/home/prasithchilla/FastPages
CONDA_EXE=/home/prasithchilla/anaconda3/bin/conda
_CE_M=
APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL=true
WSL_DISTRO_NAME=Ubuntu-22.04
ELECTRON_RUN_AS_NODE=1
VSCODE_AMD_ENTRYPOINT=vs/workbench/api/node/extensionHostProcess
NAME=Code
PWD=/home/prasithchilla/FastPages
LOGNAME=prasithchilla
CONDA_PREFIX=/home/prasithchilla/anaconda3
project_dir=/home/prasithchilla
HOME=/home/prasithchilla
LANG=en_US.UTF-8
WSL_INTEROP=/run/WSL/18186_interop
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
WAYLAND_DISPLAY=wayland-0
CONDA_PROMPT_MODIFIER=(base) 
PYDEVD_USE_FRAME_EVAL=NO
posts=/home/prasithchilla/FastPages/_posts
LESSCLOSE=/usr/bin/lesspipe %s %s
VSCODE_HANDLES_SIGPIPE=true
TERM=xterm-256color
_CE_CONDA=
LESSOPEN=| /usr/bin/lesspipe %s
USER=prasithchilla
PYTHONIOENCODING=utf-8
notebooks=/home/prasithchilla/FastPages/_notebooks
CONDA_SHLVL=1
DISPLAY=:0
SHLVL=2
PAGER=cat
project_repo=https://github.com/BuddaBaker/FastPages.git
VSCODE_CWD=/mnt/c/Users/Prasi/AppData/Local/Programs/Microsoft VS Code
CONDA_PYTHON_EXE=/home/prasithchilla/anaconda3/bin/python
XDG_RUNTIME_DIR=/mnt/wslg/runtime-dir
PS1=[PEXP\[\]ECT_PROMPT>
CONDA_DEFAULT_ENV=base
WSLENV=ELECTRON_RUN_AS_NODE/w:
VSCODE_WSL_EXT_LOCATION=/mnt/c/Users/Prasi/.vscode/extensions/ms-vscode-remote.remote-wsl-0.66.3
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
PATH=/home/prasithchilla/.vscode-server/bin/e4503b30fc78200f846c62cf8091b76ff5547662/bin/remote-cli:/home/prasithchilla/.local/bin:/home/prasithchilla/anaconda3/bin:/home/prasithchilla/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/mnt/c/Program Files (x86)/Common Files/Oracle/Java/javapath:/mnt/c/WINDOWS/system32:/mnt/c/WINDOWS:/mnt/c/WINDOWS/System32/Wbem:/mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0:/mnt/c/WINDOWS/System32/OpenSSH:/mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/IPT:/mnt/c/Program Files/Intel/Intel(R) Management Engine Components/IPT:/mnt/c/Program Files/PuTTY:/mnt/c/Users/Prasi/AppData/Local/Microsoft/WindowsApps:/mnt/c/Users/Prasi/AppData/Local/Programs/Python/Python38-32/Scripts:/mnt/c/Users/Prasi/AppData/Local/Programs/Python/Python38-32:/mnt/c/Users/Prasi/AppData/Local/Programs/Microsoft VS Code/bin:/snap/bin
VSCODE_NLS_CONFIG={"locale":"en","availableLanguages":{}}
HOSTTYPE=x86_64
PULSE_SERVER=/mnt/wslg/PulseServer
VSCODE_HANDLES_UNCAUGHT_ERRORS=true
OLDPWD=/home/prasithchilla/FastPages/_notebooks
VSCODE_IPC_HOOK_CLI=/mnt/wslg/runtime-dir/vscode-ipc-4fa4e287-db15-4c89-9c7b-cc41a30ba1e6.sock
_=/usr/bin/env

cd $project

echo ""
echo "show the secrets of .git"
cd .git
ls -l

echo ""
echo "look at config file"
cat config
show the secrets of .git
total 56
drwxr-xr-x 2 prasithchilla prasithchilla  4096 Aug 30 15:29 branches
-rw-r--r-- 1 prasithchilla prasithchilla   268 Aug 30 15:29 config
-rw-r--r-- 1 prasithchilla prasithchilla    73 Aug 30 15:29 description
-rw-r--r-- 1 prasithchilla prasithchilla    23 Aug 30 15:29 HEAD
drwxr-xr-x 2 prasithchilla prasithchilla  4096 Aug 30 15:29 hooks
-rw-r--r-- 1 prasithchilla prasithchilla 12690 Aug 30 15:29 index
drwxr-xr-x 2 prasithchilla prasithchilla  4096 Aug 30 15:29 info
drwxr-xr-x 3 prasithchilla prasithchilla  4096 Aug 30 15:29 logs
drwxr-xr-x 4 prasithchilla prasithchilla  4096 Aug 30 15:29 objects
-rw-r--r-- 1 prasithchilla prasithchilla   184 Aug 30 15:29 packed-refs
drwxr-xr-x 5 prasithchilla prasithchilla  4096 Aug 30 15:29 refs

look at config file
[core]4h
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = https://github.com/BuddaBaker/FastPages.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
	remote = origin
	merge = refs/heads/master

Hacks Go back to some of the deployment procedures and think about some thing you could verify through Bash notebook.

  • Is there anything we use to verify tools we install? Think about versions.
  • Is there anything we could verify with Anaconda?
  • How would you update a repository?
  • Really cool would be automating a procedure from installation.

Hacks:

  • Yes. To Check bash version we can do bash-version
  • We can find out what packages we have downloaded by using the command conda list
  • The commands git push and git commit can be used to show changes