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

# Variable section
export project_dir=$HOME/vscode  # change vscode to different name to test git clone
export project=$project_dir/APCSP  # change APCSP to name of project from git clone
export project_repo="https://github.com/nighthawkcoders/APCSP.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... makinng 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 /Users/matidanish/vscode exists.
Directory /Users/matidanish/vscode/APCSP exists.
echo "Navigate to project, then navigate to area wwhere 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 wwhere files were cloned
/Users/matidanish/vscode/APCSP

list top level or root of files with project pulled from github
Gemfile			_includes		_word
LICENSE			_layouts		assets
Makefile		_notebooks		docker-compose.yml
README.md		_pages			images
_action_files		_plugins		index.html
_config.yml		_posts			python
_fastpages_docs		_sass

list again with hidden files pulled from github
.			LICENSE			_plugins
..			Makefile		_posts
.DS_Store		README.md		_sass
.devcontainer.json	_action_files		_word
.git			_config.yml		assets
.gitattributes		_fastpages_docs		docker-compose.yml
.github			_includes		images
.gitignore		_layouts		index.html
.vscode			_notebooks		python
Gemfile			_pages

list all files in long format
total 112
drwxr-xr-x  29 matidanish  staff    928 Aug 29 14:11 .
drwxr-xr-x   4 matidanish  staff    128 Aug 23 13:39 ..
-rw-r--r--@  1 matidanish  staff   6148 Aug 29 14:11 .DS_Store
-rw-r--r--   1 matidanish  staff    420 Aug 18 23:27 .devcontainer.json
drwxr-xr-x  15 matidanish  staff    480 Aug 25 13:22 .git
-rw-r--r--   1 matidanish  staff     84 Aug 18 23:27 .gitattributes
drwxr-xr-x   4 matidanish  staff    128 Aug 18 23:27 .github
-rw-r--r--   1 matidanish  staff    917 Aug 18 23:27 .gitignore
drwxr-xr-x   3 matidanish  staff     96 Aug 18 23:27 .vscode
-rwxr-xr-x   1 matidanish  staff   1304 Aug 18 23:27 Gemfile
-rw-r--r--   1 matidanish  staff  11351 Aug 18 23:27 LICENSE
-rwxr-xr-x   1 matidanish  staff   1422 Aug 18 23:27 Makefile
-rwxr-xr-x   1 matidanish  staff   3614 Aug 18 23:27 README.md
drwxr-xr-x  18 matidanish  staff    576 Aug 18 23:27 _action_files
-rw-r--r--   1 matidanish  staff   3716 Aug 18 23:27 _config.yml
drwxr-xr-x  24 matidanish  staff    768 Aug 18 23:27 _fastpages_docs
drwxr-xr-x  29 matidanish  staff    928 Aug 18 23:27 _includes
drwxr-xr-x   6 matidanish  staff    192 Aug 18 23:27 _layouts
drwxr-xr-x  12 matidanish  staff    384 Aug 25 13:21 _notebooks
drwxr-xr-x   9 matidanish  staff    288 Aug 18 23:27 _pages
drwxr-xr-x   4 matidanish  staff    128 Aug 18 23:27 _plugins
drwxr-xr-x  29 matidanish  staff    928 Aug 18 23:27 _posts
drwxr-xr-x   3 matidanish  staff     96 Aug 18 23:27 _sass
drwxr-xr-x   3 matidanish  staff     96 Aug 18 23:27 _word
drwxr-xr-x   4 matidanish  staff    128 Aug 18 23:27 assets
-rwxr-xr-x   1 matidanish  staff   1136 Aug 18 23:27 docker-compose.yml
drwxr-xr-x  51 matidanish  staff   1632 Aug 18 23:27 images
-rw-r--r--   1 matidanish  staff   1061 Aug 18 23:27 index.html
drwxr-xr-x   3 matidanish  staff     96 Aug 18 23:27 python
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
/Users/matidanish/vscode/APCSP/_posts
total 456
-rw-r--r--  1 matidanish  staff  21306 Aug 18 23:27 2022-06-01-TT160-deploy.md
-rw-r--r--  1 matidanish  staff   5861 Aug 18 23:27 2022-07-07-PBL-binary.md
-rw-r--r--  1 matidanish  staff   3085 Aug 18 23:27 2022-07-08-PBL-grade_calc.md
-rw-r--r--  1 matidanish  staff   3698 Aug 18 23:27 2022-07-08-PBL-graph.md
-rw-r--r--  1 matidanish  staff   5729 Aug 18 23:27 2022-07-08-PBL-life.md
-rw-r--r--  1 matidanish  staff  14387 Aug 18 23:27 2022-07-08-PBL-snake.md
-rw-r--r--  1 matidanish  staff    334 Aug 18 23:27 2022-07-10-PBL-database.md
-rw-r--r--  1 matidanish  staff   2908 Aug 18 23:27 2022-07-10-PBL-jokes.md
-rw-r--r--  1 matidanish  staff   4046 Aug 18 23:27 2022-07-10-PBL-rapidapi.md
-rw-r--r--  1 matidanish  staff   6685 Aug 18 23:27 2022-07-19-PBL-calculator.md
-rw-r--r--  1 matidanish  staff  23325 Aug 18 23:27 2022-07-25-CSP-workshop.md
-rw-r--r--  1 matidanish  staff   2333 Aug 18 23:27 2022-08-15-TP000-student_score_history.md
-rw-r--r--  1 matidanish  staff   4363 Aug 18 23:27 2022-08-15-TP100-pseudo_code.md
-rw-r--r--  1 matidanish  staff   7968 Aug 18 23:27 2022-08-15-TR100-tool_setup.md
-rw-r--r--  1 matidanish  staff  15026 Aug 18 23:27 2022-08-15-TT100-tools.md
-rw-r--r--  1 matidanish  staff   5590 Aug 18 23:27 2022-08-15-TT101-vscode-wsl.md
-rw-r--r--  1 matidanish  staff   2066 Aug 18 23:27 2022-08-22-TR110-intro_python.md
-rw-r--r--  1 matidanish  staff   5173 Aug 18 23:27 2022-08-22-TT110-fastpages.md
-rw-r--r--  1 matidanish  staff   2635 Aug 18 23:27 2022-08-22-TT110-focus.md
-rw-r--r--  1 matidanish  staff   2737 Aug 18 23:27 2022-08-29-TR120-data_abstract.md
-rw-r--r--  1 matidanish  staff  10683 Aug 18 23:27 2022-08-29-TT120-agile.md
-rw-r--r--  1 matidanish  staff   4498 Aug 18 23:27 2022-08-29-TT120-html_fragments.md
-rw-r--r--  1 matidanish  staff   9037 Aug 18 23:27 2022-09-05-TP130-create_performance_task.md
-rw-r--r--  1 matidanish  staff   7753 Aug 18 23:27 2022-09-05-TP131-create-task-bria.md
-rw-r--r--  1 matidanish  staff   8066 Aug 18 23:27 2022-09-05-TR130-creative_development.md
-rw-r--r--  1 matidanish  staff   3520 Aug 18 23:27 2022-09-05-TT130-applab.md
-rw-r--r--  1 matidanish  staff    720 Aug 18 23:27 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
/Users/matidanish/vscode/APCSP/_notebooks
total 184
-rw-r--r--  1 matidanish  staff  14262 Aug 21 11:57 2022-06-01-TT150-webapi_tutorial.ipynb
-rw-r--r--  1 matidanish  staff  11893 Aug 25 13:21 2022-06-01-TT160-bash_tutorial.ipynb
-rw-r--r--  1 matidanish  staff   8653 Aug 18 23:27 2022-07-21-PBL-neo4j_intro.ipynb
-rw-r--r--  1 matidanish  staff    899 Aug 19 14:22 2022-08-19-test.ipynb
-rw-r--r--@ 1 matidanish  staff  13064 Aug 23 14:04 2022-08-22-TP110-python_hello.ipynb
-rw-r--r--  1 matidanish  staff  10621 Aug 30 13:12 2022-08-29-TP120-python_lists.ipynb
-rw-r--r--  1 matidanish  staff  12632 Aug 18 23:27 2022-09-05-TT130-js_tutorial.ipynb
-rw-r--r--  1 matidanish  staff    771 Aug 18 23:27 README.md
drwxr-xr-x  3 matidanish  staff     96 Aug 18 23:27 images
echo "Look for images in notebooks, print working directory, list files"
cd $notebooks/images  # this should exist per fastpages
pwd
ls -l
Look for images in notebooks, print working directory, list files
/Users/matidanish/vscode/APCSP/_notebooks/images
total 160
-rw-r--r--  1 matidanish  staff  79231 Aug 18 23:27 kernels.png
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.md

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

![](https://github.com/nighthawkcoders/APCSP/workflows/CI/badge.svg) 
![](https://github.com/nighthawkcoders/APCSP/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://nighthawkcoders.github.io/APCSP/

# 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
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/zsh
TMPDIR=/var/folders/sn/p8n7cy514fg8q1gp31wshf800000gn/T/
CONDA_SHLVL=1
PYTHONUNBUFFERED=1
CONDA_PROMPT_MODIFIER=(base) 
OLDPWD=/Users/matidanish/vscode/APCSP/_notebooks/images
ORIGINAL_XDG_CURRENT_DESKTOP=undefined
MallocNanoZone=0
PYDEVD_USE_FRAME_EVAL=NO
PYTHONIOENCODING=utf-8
USER=matidanish
CONDA_EXE=/Users/matidanish/opt/anaconda3/bin/conda
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.NeQ9NcH41Q/Listeners
__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0
PAGER=cat
VSCODE_AMD_ENTRYPOINT=vs/workbench/api/node/extensionHostProcess
ELECTRON_RUN_AS_NODE=1
_CE_CONDA=
PATH=/Users/matidanish/opt/anaconda3/bin:/Users/matidanish/opt/anaconda3/condabin:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/3.10/bin:/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/Apple/usr/bin
CONDA_PREFIX=/Users/matidanish/opt/anaconda3
PWD=/Users/matidanish/vscode/APCSP
notebooks=/Users/matidanish/vscode/APCSP/_notebooks
VSCODE_HANDLES_UNCAUGHT_ERRORS=true
project_repo=https://github.com/nighthawkcoders/APCSP.git
project=/Users/matidanish/vscode/APCSP
project_dir=/Users/matidanish/vscode
XPC_FLAGS=0x0
PS1=[PEXP\[\]ECT_PROMPT>
_CE_M=
XPC_SERVICE_NAME=0
SHLVL=1
HOME=/Users/matidanish
APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL=1
VSCODE_NLS_CONFIG={"locale":"en-us","availableLanguages":{},"_languagePackSupport":true}
CONDA_PYTHON_EXE=/Users/matidanish/opt/anaconda3/bin/python
LOGNAME=matidanish
LC_CTYPE=UTF-8
VSCODE_IPC_HOOK=/Users/matidanish/Library/Application Support/Code/1.70.2-main.sock
VSCODE_CODE_CACHE_PATH=/Users/matidanish/Library/Application Support/Code/CachedData/e4503b30fc78200f846c62cf8091b76ff5547662
CONDA_DEFAULT_ENV=base
VSCODE_PID=924
posts=/Users/matidanish/vscode/APCSP/_posts
VSCODE_CWD=/
_=/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 96
-rw-r--r--   1 matidanish  staff     17 Aug 25 13:22 COMMIT_EDITMSG
-rw-r--r--   1 matidanish  staff    353 Aug 25 13:18 FETCH_HEAD
-rw-r--r--   1 matidanish  staff     23 Aug 18 23:27 HEAD
-rw-r--r--   1 matidanish  staff     41 Aug 25 13:18 ORIG_HEAD
-rw-r--r--   1 matidanish  staff    314 Aug 18 23:27 config
-rw-r--r--   1 matidanish  staff     73 Aug 18 23:27 description
drwxr-xr-x  14 matidanish  staff    448 Aug 18 23:27 hooks
-rw-r--r--   1 matidanish  staff  19716 Aug 25 13:22 index
drwxr-xr-x   3 matidanish  staff     96 Aug 18 23:27 info
drwxr-xr-x   4 matidanish  staff    128 Aug 18 23:27 logs
drwxr-xr-x  10 matidanish  staff    320 Aug 25 13:22 objects
-rw-r--r--   1 matidanish  staff    271 Aug 18 23:27 packed-refs
drwxr-xr-x   5 matidanish  staff    160 Aug 18 23:27 refs

look at config file
[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
	ignorecase = true
	precomposeunicode = true
[remote "origin"]
	url = https://github.com/nighthawkcoders/APCSP.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
	remote = origin
	merge = refs/heads/master
cd /tmp

file="sample.md"
if [ -f "$file" ]; then
    rm $file
fi

tee -a $file >/dev/null <<EOF
# Show Generated Markdown
This introductory paragraph and this line and the title above are generated using tee with the standard input (<<) redirection operator.
- This bulleted element is still part of the tee body.
EOF

echo "- This bulleted element and lines below are generated using echo with standard output (>>) redirection operator." >> $file
echo "- The list definition, as is, is using space to seperate lines.  Thus the use of commas and hyphens in output." >> $file
actions=("ls,list-directory" "cd,change-directory" "pwd,present-working-directory" "if-then-fi,test-condition" "env,bash-environment-variables" "cat,view-file-contents" "tee,write-to-output" "echo,display-content-of-string" "echo_text_>\$file,write-content-to-file" "echo_text_>>\$file,append-content-to-file")
for action in ${actions[@]}; do  # for loop is very similar to other language, though [@], semi-colon, do are new
  action=${action//-/ }  # convert dash to space
  action=${action//,/: } # convert comma to colon
  action=${action//_text_/ \"sample text\" } # convert _text_ to sample text, note escape character \ to avoid "" having meaning
  echo "    - ${action//-/ }" >> $file  # echo is redirected to file with >>
done

echo ""
echo "File listing and status"
ls -l $file # list file
wc $file   # show words
mdless $file  # this requires installation, but renders markown from terminal

rm $file  # clean up termporary file
File listing and status
-rw-r--r--  1 matidanish  wheel  809 Aug 30 13:15 sample.md
      15     132     809 sample.md
bash: mdless: command not found