-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.create
More file actions
executable file
·114 lines (91 loc) · 5 KB
/
.create
File metadata and controls
executable file
·114 lines (91 loc) · 5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#!/bin/bash
#!/bin/bash
#----------------------------------------------------------------------+
#Color picker, usage: printf ${BLD}${CUR}${RED}${BBLU}"Some text"${DEF}|
#---------------------------+--------------------------------+---------+
# Text color | Background color | |
#------------+--------------+--------------+-----------------+ |
# Base |Lighter\Darker| Base | Lighter\Darker | |
#------------+--------------+--------------+-----------------+ |
RED='\e[31m'; LRED='\e[91m'; BRED='\e[41m'; BLRED='\e[101m' #| Red |
GRN='\e[32m'; LGRN='\e[92m'; BGRN='\e[42m'; BLGRN='\e[102m' #| Green |
YLW='\e[33m'; LYLW='\e[93m'; BYLW='\e[43m'; BLYLW='\e[103m' #| Yellow |
BLU='\e[34m'; LBLU='\e[94m'; BBLU='\e[44m'; BLBLU='\e[104m' #| Blue |
MGN='\e[35m'; LMGN='\e[95m'; BMGN='\e[45m'; BLMGN='\e[105m' #| Magenta |
CYN='\e[36m'; LCYN='\e[96m'; BCYN='\e[46m'; BLCYN='\e[106m' #| Cyan |
GRY='\e[37m'; DGRY='\e[90m'; BGRY='\e[47m'; BDGRY='\e[100m' #| Gray |
#------------------------------------------------------------+---------+
# Effects |
#----------------------------------------------------------------------+
DEF='\e[0m' # Default color and effects |
BLD='\e[1m' # Bold\brighter |
DIM='\e[2m' # Dim\darker |
CUR='\e[3m' # Italic font |
UND='\e[4m' # Underline |
INV='\e[7m' # Inverted |
COF='\e[?25l' # Cursor Off |
CON='\e[?25h' # Cursor On |
#----------------------------------------------------------------------+
# Text positioning, usage: XY 10 10 "Some text" |
XY () { printf "\e[${2};${1}H${3}"; } # |
#----------------------------------------------------------------------+
# Line, usage: line - 10 | line -= 20 | line "word1 word2 " 20 |
line () { printf %.s"${1}" $(seq ${2}); } # |
#----------------------------------------------------------------------+
# Название папки нового проекта
FOLDER_NAME=$1
# Копировать проект
create=$2
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m'
SOURCE="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
PATH_ROOT="$( dirname "$SOURCE" )"
cd $PATH_ROOT
echo -e "$PATH_ROOT"
# Создаем папку проекта если ее нет
if [ -d "$FOLDER_NAME" ] ; then
echo -e "${RED}Папка $FOLDER_NAME существует${NC}\n"
exit 0
else
mkdir $FOLDER_NAME
echo -e "${GREEN}Создана папка $FOLDER_NAME${NC} \n"
fi
# Переходим в папку
#
cd ./$FOLDER_NAME
# Создаем папку проекта если ее нет
#
if [ "$create" = "create" ] ; then
echo "${GREEN}Копирование файлов${NC}";
ln -s ${SOURCE}/node_modules/ ${PATH_ROOT}/$FOLDER_NAME/node_modules
cp -r ${SOURCE}/gulpfile.js ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js
cp -r ${SOURCE}/yarn.lock ${PATH_ROOT}/$FOLDER_NAME/yarn.lock
cp -r ${SOURCE}/package.json ${PATH_ROOT}/$FOLDER_NAME/package.json
cp -r ${SOURCE}/bower.json ${PATH_ROOT}/$FOLDER_NAME/bower.json
cp -r ${SOURCE}/yarn.lock ${PATH_ROOT}/$FOLDER_NAME/yarn.lock
else
echo "${GREEN}Создание символических ссылок${NC}";
mkdir gulpfile.js
cp -r ${SOURCE}/gulpfile.js/config.js ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/config.js
cp -r ${SOURCE}/gulpfile.js/index.js ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/index.js
cp -r ${SOURCE}/gulpfile.js/webpack.config.js ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/webpack.config.js
cp -r ${SOURCE}/bower.json ${PATH_ROOT}/$FOLDER_NAME/
ln -s ${SOURCE}/gulpfile.js/bower.js ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/bower.js
ln -s ${SOURCE}/gulpfile.js/tasks ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/tasks
ln -s ${SOURCE}/gulpfile.js/utils ${PATH_ROOT}/$FOLDER_NAME/gulpfile.js/utils
ln -s ${SOURCE}/yarn.lock ${PATH_ROOT}/$FOLDER_NAME/
ln -s ${SOURCE}/package.json ${PATH_ROOT}/$FOLDER_NAME/
ln -s ${SOURCE}/node_modules/ ${PATH_ROOT}/$FOLDER_NAME/
fi
mkdir logs frontend public_html frontend/template frontend/styles frontend/scripts
mkdir frontend/images frontend/favicon frontend/svgstore
# Копируем файлы и папки
cp -r ${SOURCE}/frontend/* ${PATH_ROOT}/$FOLDER_NAME/frontend/
cp -r ${SOURCE}/.bowerrc ${PATH_ROOT}/$FOLDER_NAME/.bowerrc
cp -r ${SOURCE}/.babelrc ${PATH_ROOT}/$FOLDER_NAME/.babelrc
cp -r ${SOURCE}/.gitignore ${PATH_ROOT}/$FOLDER_NAME/.gitignore
cp -r ${SOURCE}/.eslintignore ${PATH_ROOT}/$FOLDER_NAME/.eslintignore
cp -r ${SOURCE}/.editorconfig ${PATH_ROOT}/$FOLDER_NAME/.editorconfig
echo -e "Проект ${GREEN}$FOLDER_NAME${NC} успешно создан"
exit 0