Skip to content

Instantly share code, notes, and snippets.

@Titiaiev
Created September 8, 2019 19:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Titiaiev/3f1987251e80e9f04c84181b4fd859b2 to your computer and use it in GitHub Desktop.
Save Titiaiev/3f1987251e80e9f04c84181b4fd859b2 to your computer and use it in GitHub Desktop.
#!/bin/bash
DIVIDER="====================================="
USER_CHROM_PROFILE_DIRNAME=".chrome_user_profile"
IGNORE=".gitignore"
echo "Хотите запустить инициализацию нового проект? (yes/no)"
read AGREE
echo "$DIVIDER"
if [[ "$AGREE" != "yes" ]]; then
exit 0
fi
echo "Запустить Chrome и VS Code по окончании? (yes/no)"
read LAUNCH
echo "$DIVIDER"
echo "Хотите удалить инициализирующий скрипт? (yes/no)"
read DELETE
echo "$DIVIDER"
if [ ! -e "$IGNORE" ]; then
echo "$USER_CHROM_PROFILE_DIRNAME
node_modules
$(basename $0)
" >> $IGNORE
fi
# если package.json нет, то создать проект и установить зависимости
if [ ! -e 'package.json' ]; then
npm init -y
npm i react
# npm i -D eslint babel
fi
touch launch.sh
echo "#!/bin/bash
# не менять местами 3,4,5 строки
FIRST_LAUNCH=\"true\"
USER_CHROM_PROFILE_DIRNAME=\".chrome_user_profile\"
URLs_FOR_OPEN=\"google.com\"
NEW_URL=\$1
URLs_FOR_OPEN+=\" \$NEW_URL\"
if [[ \"\$FIRST_LAUNCH\" == \"true\" ]]; then
echo \"Укажите папку для профиля пользователя Chrome (по умолчанию: chrome_user_profile)\"
read DIR
echo \"Напишите через пробел url адреса которые вы бы хотели открывать в браузере.\"
read URLs
URLs_FOR_OPEN+=\" \$URLs\"
if [ -n \"\$DIR\" ]; then
USER_CHROM_PROFILE_DIRNAME=\$DIR
fi
# заменяем первые три строки в этом файле
sed -i \"3s/.*/FIRST_LAUNCH=\\\"false\\\"/\" \$(basename \$0)
sed -i \"4s/.*/USER_CHROM_PROFILE_DIRNAME=\\\"\$USER_CHROM_PROFILE_DIRNAME\\\"/\" \$(basename \$0)
sed -i \"5s/.*/URLs_FOR_OPEN=\\\"\$URLs_FOR_OPEN\\\"/\" \$(basename \$0)
fi
if [ -n \"\$NEW_URL\" ]; then
sed -i \"5s/.*/URLs_FOR_OPEN=\\\"\$URLs_FOR_OPEN\\\"/\" \$(basename $0)
fi
# запуск рабочей директории в vscode
code \$PWD &
# список интересных флагов для хрома
# https://mydiv.net/arts/view-30-poleznyh-komand-dlya-Google-Chrome.html
# --incognito # серфить ананимно
# --disable-extensions # отключить расширения
# --restore-last-session # восстановить прощлую сессию
# --no-referrers # Отключение функции отслеживания веб-адресов по ссылкам
# --start-maximized
# запуск хрома
if [ -n \"\$URLs_FOR_OPEN\" ]; then
chrome \$URLs_FOR_OPEN --start-maximized --disable-extensions --user-data-dir=\"./\$USER_CHROM_PROFILE_DIRNAME\" &
fi
exit 0
# запуск хрома без гуи для удаленного дебага
#chrome --headless --remote-debugging-port=9222 https://chromium.org
" > launch.sh
# Инициализировать git если не было
DIR=".git"
if [ ! -d "$DIR" ]; then
git init
git add .
git commit -m 'initial commit'
fi
if [[ "$LAUNCH" == "yes" ]]; then
bash ./launch.sh
fi
# самоудалить файл
if [[ "$DELETE" == "yes" ]]; then
rm $0
fi
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment