главная|main page

состояние|status

блог|blog

файлы|files

программы|software

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Bautista <carlosbm@gmail.com>2013-03-13 14:48:44 +0100
committerCarlos Bautista <carlosbm@gmail.com>2013-03-13 14:48:44 +0100
commitcccb1547c90f3fd2e9689e5ef26e7deb79c58f15 (patch)
tree5e63b03a8e44754ccdce9a2d55473836fdaf3d0b
parented14c775e313bed74ad0cfdcf5abb2e0ea73a9b7 (diff)
Added config file support and check for files existing prior to backup
-rwxr-xr-xbb.sh23
1 files changed, 19 insertions, 4 deletions
diff --git a/bb.sh b/bb.sh
index 1e04a7c..6d6fc32 100755
--- a/bb.sh
+++ b/bb.sh
@@ -85,6 +85,10 @@
# Global variables
# It is recommended to perform a 'rebuild' after changing any of this in the code
+
+# Config file. Use instead of this function if you want to avoid merges in VCS
+global_config=".config"
+
global_variables() {
global_software_name="BashBlog"
global_software_version="1.5.1"
@@ -424,6 +428,12 @@ rebuild_index() {
# Displays a list of the posts
list_posts() {
+ ls *.html &> /dev/null
+ if [[ $? -ne 0 ]]; then
+ echo "No posts yet. Use 'bb.sh post' to create one"
+ return
+ fi
+
lines=""
n=1
for i in $(ls -t *.html); do
@@ -599,8 +609,10 @@ reset() {
echo "Are you sure you want to delete all blog entries? Please write \"Yes, I am!\" "
read line
if [ "$line" == "Yes, I am!" ]; then
- rm *.html *.css *.rss
+ rm .*.html *.html *.css *.rss &> /dev/null
+ echo
echo "Deleted all posts, stylesheets and feeds."
+ echo "Kept your old '.backup.tar.gz' just in case, please delete it manually if needed."
else
echo "Phew! You dodged a bullet there. Nothing was modified."
fi
@@ -612,7 +624,8 @@ reset() {
# $1 command to run
# $2 file name of a draft to continue editing (optional)
do_main() {
- global_variables
+ # Use config file or fallback to inline configuration
+ source "$global_config" || global_variables
# Check for $EDITOR
if [[ -z "$EDITOR" ]]; then
@@ -645,8 +658,11 @@ do_main() {
fi
# We're going to back up just in case
+ ls *.html &> /dev/null
+ if [[ $? -eq 0 ]]; then
tar cfz ".backup.tar.gz" *.html
chmod 600 ".backup.tar.gz"
+ fi
if [ "$1" == "reset" ]; then
reset
@@ -669,5 +685,4 @@ do_main() {
# MAIN
# Do not change anything here. If you want to modify the code, edit do_main()
#
-do_main $*
-
+do_main $* \ No newline at end of file