BASH NOTES
USED ON EHD EXD EDH to rename files by date
recursive_list_5() {
for d in *; do
if [ -d "$d" ]; then
(cd -- "$d" && recursive_list_5)
fi
newdate=$(stat -f %SB -t %Y__%m__%d "$d")
filename=${newdate}_${d##*/}
echo "$filename"
mv "$d" "$filename"
done
}
LIST ALL DIRECTORIES BY CREATION DATE
ls -lct
LIST ALL FILES CREATED TODAY
find . -mtime -1 -type f -print
EXPORT TO A CSV
find . -mtime -1 -type f -print > opened-today.csv
LIST ALL PROCESSES
ps ax
ps ax -o pid,ni,command
FLATTEN
find dir1 -type f -exec mv {} dir1 \;
find dir1 -depth -exec rmdir {} \;
LIST DIRECTORIES (and list while removing slash)
ls -d */
ls -d */ | cut -f1 -d'/'
FIND DIFFERENCE IN TWO FOLDERS/DIRECTORIES
diff -rq dir1 dir2 | grep 'Only in dir2/'
GET FILENAME WITHOUT EXTENSION
filename=$(basename -- "$fullfile")
extension="${filename##*.}"
filename="${filename%.*}"
Convert notebook to html if not already html
IN ENGLISH: For all python files, check if an html already exists. If not, make one.
ADDING TO AN ARRAY
args=()
for i in *.html; do
args+=("$i")
done
echo "${args[@]}"
for i in *.ipynb; do
if [[ ! " ${args[@]} " =~ " ${i%.*}.html " ]]; then
jupyter nbconvert --to html $i
echo "$i"
fi
done
CHECK IF FILE EXISTS IN FOLDER:
for i in *.ipynb; do
find "${i%.*}.html";
done
OLD, NOT WORKING LIKE I WANTED LOL
for d in *; do
if [[ $d == *.ipynb ]] ; then
if [[ $d != *.html ]] ; then
echo "$d"
jupyter nbconvert --to html $d
fi
fi
done
for d in *; do
if [[ $d != *.html ]] ; then
echo "$d"
jupyter nbconvert --to html $d
fi
done
Fixing File Permissions (especially on jupyter notebook)
/usr/local/share/jupyter/nbconvert/templates sudo chmod a+rwx html/
CONVERT ONE FILE
jupyter nbconvert –to html notebook.ipynb
(IF YOU WANT IT TO EXECUTE)
jupyter nbconvert –execute –to html notebook.ipynb
ADD DATE TO FILE NAME:
for d in ; do newdate=$(stat -f %SB -t %Y%m%d “$d”) filename=${newdate}${d##_/} echo “$filename” cp $d “$filename” done
CONVERT ALL .ipynb FILES TO .html
for d in *.ipynb ; do jupyter nbconvert –to html $d done
BASH SCRIPT:
List files in directory list sub files in directory
for d in *.ipynb ; do jupyter nbconvert –execute –to html $d.ipynb echo “$d” done
for d in *.ipynb ; do jupyter nbconvert –to html $d done
for f in /IST736_TextMining/ IST736_TextMining/**/ ; do echo “$f” done
for f in /ALI/_ ALI/**/_ ; do echo “$f” done
recursive*list2() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list) fi if [[ $d == _.ipynb ]] ; then echo “$d” fi done }
recursive*list2() { for d in *; do if [[ $d == _.ipynb ]] ; then echo “$d” fi done }
list_files(d) { if [[ $d == *.ipynb ]] ; then echo “$d” fi }
recursive*list2() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && list_files) fi if [[ $d == _.ipynb ]] ; then echo “$d” fi done }
recursive_list2() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && echo “$d”) fi done }
recursive*list_3() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_3) fi if [[ $d == _.ipynb ]] ; then echo “$d” fi done }
recursive*list_3() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_3) fi if [[ $d == _.ipynb ]] ; then cp $d all_html/ || cp $d ../all_html/ fi done }
stat -f “%SB”
mv – Untitled.ipynb “Untitled-$(stat -f %SB).ipynb”
for f in *.ipynb; do
olddate=$(stat -f %SB -t %Y%m%d%H%M “$f”)
touch -m -t $olddate “$f”
done
%Sa%nModify
for f in *.ipynb; do
olddate=$(stat -f %Sa-t %Y%m%d%H%M “$f”)
touch -m -t $olddate “$f”
done
stat -f “Access (atime): %Sa%nModify (mtime): %Sm%nChange (ctime): %Sc%nBirth (Btime): %SB” 2011_executions.csv
stat -f “%Sm” 4.2.png
for f in .ipynb; do echo “${f%%.}”; done
for f in .ipynb; do newdate=$(stat -f %SB “$f”) echo “${f%%.}” && echo $newdate done
recursivelist_4() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_4) fi if [[ $d == _.ipynb ]] ; then newdate=$(stat -f %SB -t %Y_%m%d “$d”) filename=${newdate}${d%%.}. echo “$filename” fi done }
for f in .ipynb; do newdate=$(stat -f %SB -t %Y%m%d “$f”) filename=${newdate}${f%%._} echo “$filename” done
recursivelist_4() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_4) fi if [[ $d == _.ipynb ]] ; then newdate=$(stat -f %SB -t %Y_%m%d “$d”) filename=${newdate}${d%%.}.ipynb echo “$filename” cp $d all_html/”$filename” || cp $d ../all_html/”$filename” fi done }
RENAMING FILES WITH DATE
recursivelist_4() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_4) fi if [[ $d == _.pdf ]] ; then newdate=$(stat -f %SB -t %Y_%m%d “$d”) filename=${newdate}${d%%.}.pdf echo “$filename” cp $d all_files/”$filename” || cp $d ../all_files/”$filename” fi done }
recursivelist_5() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_5) fi newdate=$(stat -f %SB -t %Y%m%d “$d”) filename=${newdate}${d##*/} echo “$filename”
done }
recursivelist_5() { for d in *; do if [ -d “$d” ]; then (cd – “$d” && recursive_list_5) fi newdate=$(stat -f %SB -t %Y%m%d “$d”) filename=${newdate}${d##*/} echo “$filename” done }
RENAME FILES (below not recursive)
recursivelist_6() { for d in *; do newdate=$(stat -f %SB -t %Y%m%d “$d”) filename=${newdate}${d##*/} echo “$filename” cp $d dated/”$filename” || cp $d ../dated/”$filename” done }
for d in ; do newdate=$(stat -f %SB -t %Y%m%d “$d”) filename=${newdate}${d##_/} echo “$filename” cp $d “$filename” done