Skip to content

Commit c60dd68

Browse files
committed
feat: Add function to create and delete users, hosts, and services more convience.
1 parent 4efaa69 commit c60dd68

File tree

1 file changed

+60
-2
lines changed

1 file changed

+60
-2
lines changed

.vscode/.zshrc

Lines changed: 60 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ fi
133133

134134
# Auto Create Project Note Structure.
135135
function create_project_structure () {
136-
if [ -f "Makefile" ];then # lock the project folder
136+
if [ -f "${PROJECT_FOLDER}/Makefile" ];then # lock the project folder
137137
return
138138
fi
139139
mkdir -p $PROJECT_FOLDER/{hosts,users,services}
@@ -142,13 +142,35 @@ function create_project_structure () {
142142
touch $PROJECT_FOLDER/services/service-list.md
143143
touch $PROJECT_FOLDER/index.md
144144
touch $PROJECT_FOLDER/Makefile
145+
145146
echo "Project Folder sturcture created completed!"
147+
echo "===================== MANUAL ====================="
148+
echo "Note: this function will not run again if Makefile is exists!"
149+
echo "if you don't need created folder structure"
150+
echo "Clean Project Folder: "
151+
echo " clean_project_structure"
152+
echo ""
153+
echo "Create Notes:"
154+
echo " User: "
155+
echo " new-user <username>"
156+
echo " Host:"
157+
echo " new-host <hostname>"
158+
echo " Service: "
159+
echo " new-service <servicename>"
160+
echo "Delete Notes:"
161+
echo " User: "
162+
echo " del-user <username>"
163+
echo " Host:"
164+
echo " del-host <hostname>"
165+
echo " Service: "
166+
echo " del-service <servicename>"
167+
echo "=================================================="
146168
}
147169
create_project_structure
148170
unset -f create_project_structure
149171

150172
function clean_project_structure () {
151-
rm -rf $PROJECT_FOLDER/{hosts,users,services} $PROJECT_FOLDER/index.md $PROJECT_FOLDER/Makefile
173+
rm -rf $PROJECT_FOLDER/{hosts,users,services} $PROJECT_FOLDER/index.md # $PROJECT_FOLDER/Makefile
152174
echo "Project Folder sturcture cleaned completed!"
153175
}
154176

@@ -165,6 +187,18 @@ function new-user () {
165187
echo "User $name created!"
166188
}
167189

190+
function del-user () {
191+
local name=$1
192+
echo "Deleting user..."
193+
if [[ -z "${name}" ]]; then
194+
echo "Usage: $0 <name>";
195+
return -1;
196+
fi
197+
rm -rf ${PROJECT_FOLDER}/users/$name
198+
sed -i '' -e "/\* \[\[$name\]\]/d" ${PROJECT_FOLDER}/users/user-list.md
199+
echo "User $name deleted!"
200+
}
201+
168202
function new-host () {
169203
local name=$1
170204
echo "Creating new host..."
@@ -178,6 +212,18 @@ function new-host () {
178212
echo "Host $name created!"
179213
}
180214

215+
function del-host () {
216+
local name=$1
217+
echo "Deleting host..."
218+
if [[ -z "${name}" ]]; then
219+
echo "Usage: $0 <name>";
220+
return -1;
221+
fi
222+
rm -rf ${PROJECT_FOLDER}/hosts/$name
223+
sed -i "" -e "/\* \[\[$name\]\]/d" ${PROJECT_FOLDER}/hosts/host-list.md
224+
echo "Host $name deleted!"
225+
}
226+
181227
function new-service () {
182228
local name=$1
183229
echo "Creating new service..."
@@ -189,4 +235,16 @@ function new-service () {
189235
echo "# $name" > ${PROJECT_FOLDER}/services/$name/$name.md
190236
echo "* [[$name]]" >> ${PROJECT_FOLDER}/services/service-list.md
191237
echo "Service $name created!"
238+
}
239+
240+
function del-service () {
241+
local name=$1
242+
echo "Deleting service..."
243+
if [[ -z "${name}" ]]; then
244+
echo "Usage: $0 <name>";
245+
return -1;
246+
fi
247+
rm -rf ${PROJECT_FOLDER}/services/$name
248+
sed -i "" -e "/\* \[\[$name\]\]/d" ${PROJECT_FOLDER}/services/service-list.md
249+
echo "Service $name deleted!"
192250
}

0 commit comments

Comments
 (0)