Help... I got confused by the bash statement(while, if...)
Hello everyone, I have used bash since last year and was amazed by its powerful features, but I only treated it as a prompt that makes doing things faster then......
Until this month I started to learn bash noscripting and started to get confused by some of its logic... for example the noscript below, I still did not get it...
https://preview.redd.it/pv61mddgpytb1.png?width=947&format=png&auto=webp&s=6e807609771071c9d52af5178f0262d6a7a8d113
(1) If originally the battery was greater than 30, when battery was becoming lower than 30 , it did not quit the loop and did not showing the message either.
(2) If it was lower than 30 when I ran this program, it will show up the warning message and quit the loop.
​
I've searched for some information on the internet saying that "if [ \]" and "if " different, but I'm still not clear about the concept...
I will be appreciate if someone can explain it to me...thanks
https://redd.it/176xs3b
@r_bash
Hello everyone, I have used bash since last year and was amazed by its powerful features, but I only treated it as a prompt that makes doing things faster then......
Until this month I started to learn bash noscripting and started to get confused by some of its logic... for example the noscript below, I still did not get it...
https://preview.redd.it/pv61mddgpytb1.png?width=947&format=png&auto=webp&s=6e807609771071c9d52af5178f0262d6a7a8d113
(1) If originally the battery was greater than 30, when battery was becoming lower than 30 , it did not quit the loop and did not showing the message either.
(2) If it was lower than 30 when I ran this program, it will show up the warning message and quit the loop.
​
I've searched for some information on the internet saying that "if [ \]" and "if " different, but I'm still not clear about the concept...
I will be appreciate if someone can explain it to me...thanks
https://redd.it/176xs3b
@r_bash
Cant create a nested shells in bash beyond the Child shell using coproc command and process list
Suppose I run this command:
PID TTY STAT TIME COMMAND
40305 pts/0 Ss 0:00 bash
46922 pts/0 S 0:00 _ bash
46923 pts/0 S 0:00 | _ sleep 10
46924 pts/0 R+ 0:00 _ ps T --forest
Ok no problem, its exactly what I expected. But then, when i run the command like this:
PID TTY STAT TIME COMMAND
40305 pts/0 Ss 0:00 bash
47064 pts/0 S 0:00 _ bash
47065 pts/0 S 0:00 | _ sleep 10
47066 pts/0 R+ 0:00 _ ps T --forest
Note that, here,
So, what I was expecting was a process tree like this:
bash
_ bash
| _bash
| _ sleep 10
_ps T --forest
https://redd.it/177sgyg
@r_bash
Suppose I run this command:
coproc nested { sleep 10; } it executes sleep command within a childshell as expected. The process tree look like this when I run ps T --forest command.PID TTY STAT TIME COMMAND
40305 pts/0 Ss 0:00 bash
46922 pts/0 S 0:00 _ bash
46923 pts/0 S 0:00 | _ sleep 10
46924 pts/0 R+ 0:00 _ ps T --forest
Ok no problem, its exactly what I expected. But then, when i run the command like this:
coproc nested { (sleep 10); }, the process tree looks the same when I run ps T --forest command.PID TTY STAT TIME COMMAND
40305 pts/0 Ss 0:00 bash
47064 pts/0 S 0:00 _ bash
47065 pts/0 S 0:00 | _ sleep 10
47066 pts/0 R+ 0:00 _ ps T --forest
Note that, here,
(sleep 10) is a process list and it automatically should create a subshell to run the command sleep 10.So, what I was expecting was a process tree like this:
bash
_ bash
| _bash
| _ sleep 10
_ps T --forest
https://redd.it/177sgyg
@r_bash
Reddit
Explore this post and more from the bash community
setting a variable inside of a variable for loop
I pretty much have
x=0
myvar=$(for f in blah blah blah
do
printf stuff
x=$((x+1))
done
)
x is still equal to 0 at the end
If this is impossible then I need another way to count interations of this for loop
https://redd.it/1784yqa
@r_bash
I pretty much have
x=0
myvar=$(for f in blah blah blah
do
printf stuff
x=$((x+1))
done
)
x is still equal to 0 at the end
If this is impossible then I need another way to count interations of this for loop
https://redd.it/1784yqa
@r_bash
Reddit
Explore this post and more from the bash community
Input two characters and proceed
>VALUE=`zenity --entry --text="1-60"`
I have to enter two characters and then press enter. Is there an easy way to automatically complete the dialog after entering two characters?
https://redd.it/178ga2j
@r_bash
>VALUE=`zenity --entry --text="1-60"`
I have to enter two characters and then press enter. Is there an easy way to automatically complete the dialog after entering two characters?
https://redd.it/178ga2j
@r_bash
Reddit
Explore this post and more from the bash community
TMUX plugin for MacOS for playing Spotify playlists🌱
https://github.com/danjeltahko/spotify-tmux
https://redd.it/178jplg
@r_bash
https://github.com/danjeltahko/spotify-tmux
https://redd.it/178jplg
@r_bash
GitHub
GitHub - danjeltahko/spotify-tmux: Spotify plugin for tmux to add & start playing your favorite playlists & albums.
Spotify plugin for tmux to add & start playing your favorite playlists & albums. - GitHub - danjeltahko/spotify-tmux: Spotify plugin for tmux to add & start playing your fav...
function using unupdated information
this noscript is very long so I'll show the main idea
I orginally have a "$file" in "$mydir"
Then my noscript does this
function1 () {
for f in "$mydir"/*
do
printf "$f"
done
}
function2 () {
mv "$file" /tmp
function1
}
But when function1 is called, "$f" is still being printed even though it is no longer there.
I am using set -x to debug. The noscript works as expected. The file is moved to /tmp and no longer in "$mydir". I am also monitoring the directory using "ls" in realtime and again, it works as expected. When function 2 is called myfile is already gone from the directory so it should not be appearing there. But it is.
https://redd.it/178klt5
@r_bash
this noscript is very long so I'll show the main idea
I orginally have a "$file" in "$mydir"
Then my noscript does this
function1 () {
for f in "$mydir"/*
do
printf "$f"
done
}
function2 () {
mv "$file" /tmp
function1
}
But when function1 is called, "$f" is still being printed even though it is no longer there.
I am using set -x to debug. The noscript works as expected. The file is moved to /tmp and no longer in "$mydir". I am also monitoring the directory using "ls" in realtime and again, it works as expected. When function 2 is called myfile is already gone from the directory so it should not be appearing there. But it is.
https://redd.it/178klt5
@r_bash
Reddit
Explore this post and more from the bash community
Every 4 minutes, backup to git and if there are changes, increment commit version number and post to twitter.
crontab -e
> */4 * * * * /var/www/html/./updater.sh
updater.sh
#!/bin/bash
subsubversion=$(cat /var/www/html/.subsubversion);
cd /var/www/html;
git add *
git commit -m "v1.2.$subsubversion"
if ! [ "$(git push 2>&1)" = "Everything up-to-date" ]; then
((subsubversion++))
echo $subsubversion > /var/www/html/.subsubversion
./tweet.sh $subsubversion
fi
.subsubversion
> 0
tweet.sh
#!/bin/bash
source .twitterkeys
urlencode () {
[ -n "$1" ] \
&& echo -n "$1" | perl -p -e 's/([^A-Za-z0-9-._~])/sprintf("%%%02X", ord($1))/seg'
}
signature_method='HMAC-SHA1'
timestamp=$(date +%s)
nonce=$(md5sum <<< "$RANDOM-$(date +%s.%N)" | cut -d' ' -f 1)
url="https://api.twitter.com/2/tweets"
encodedURL=$(urlencode $url)
PARAM=$(urlencode "oauth_consumer_key=$consumer_key&oauth_nonce=$nonce&oauth_signature_method=$signature_method&oauth_timestamp=$timestamp&oauth_token=$token&oauth_version=1.0")
signature=$(echo -n 'POST&'$encodedURL'&'$PARAM|openssl dgst -sha1 -binary -hmac "$consumer_secret&$token_secret" |base64)
encoded_signature=$(urlencode $signature)
data="lockedon.life\nv.1.2."$1" is live!"
echo $data
curl -v -X POST \
$url \
-H "Authorization: OAuth oauth_consumer_key=\"$consumer_key\",oauth_token=\"$token\",oauth_signature_method=\"$signature_method\",oauth_timestamp=\"$timestamp\",oauth_nonce=\"$nonce\",oauth_version=\"1.0\",oauth_signature=\"$encoded_signature\"" \
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d '{ "text" : "'"$data"'" } '
.twitterkeys
consumer_key="oSCP6sG3cxxxxxxxxxxxxxxxx"
consumer_secret="IPLhdABBjmJkoB0Swl9QxaJQ6fUQAqZqe2xxxxxxxxxxxxxxx"
token="1467985006530162690-qQG1dKMIZab504xxxxxxxxxxxxxxxx"
token_secret="40QZ6wql6TzCuXdMmvd9e1tubXjXsxxxxxxxxxxxxxxxx"
https://redd.it/178w823
@r_bash
crontab -e
> */4 * * * * /var/www/html/./updater.sh
updater.sh
#!/bin/bash
subsubversion=$(cat /var/www/html/.subsubversion);
cd /var/www/html;
git add *
git commit -m "v1.2.$subsubversion"
if ! [ "$(git push 2>&1)" = "Everything up-to-date" ]; then
((subsubversion++))
echo $subsubversion > /var/www/html/.subsubversion
./tweet.sh $subsubversion
fi
.subsubversion
> 0
tweet.sh
#!/bin/bash
source .twitterkeys
urlencode () {
[ -n "$1" ] \
&& echo -n "$1" | perl -p -e 's/([^A-Za-z0-9-._~])/sprintf("%%%02X", ord($1))/seg'
}
signature_method='HMAC-SHA1'
timestamp=$(date +%s)
nonce=$(md5sum <<< "$RANDOM-$(date +%s.%N)" | cut -d' ' -f 1)
url="https://api.twitter.com/2/tweets"
encodedURL=$(urlencode $url)
PARAM=$(urlencode "oauth_consumer_key=$consumer_key&oauth_nonce=$nonce&oauth_signature_method=$signature_method&oauth_timestamp=$timestamp&oauth_token=$token&oauth_version=1.0")
signature=$(echo -n 'POST&'$encodedURL'&'$PARAM|openssl dgst -sha1 -binary -hmac "$consumer_secret&$token_secret" |base64)
encoded_signature=$(urlencode $signature)
data="lockedon.life\nv.1.2."$1" is live!"
echo $data
curl -v -X POST \
$url \
-H "Authorization: OAuth oauth_consumer_key=\"$consumer_key\",oauth_token=\"$token\",oauth_signature_method=\"$signature_method\",oauth_timestamp=\"$timestamp\",oauth_nonce=\"$nonce\",oauth_version=\"1.0\",oauth_signature=\"$encoded_signature\"" \
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d '{ "text" : "'"$data"'" } '
.twitterkeys
consumer_key="oSCP6sG3cxxxxxxxxxxxxxxxx"
consumer_secret="IPLhdABBjmJkoB0Swl9QxaJQ6fUQAqZqe2xxxxxxxxxxxxxxx"
token="1467985006530162690-qQG1dKMIZab504xxxxxxxxxxxxxxxx"
token_secret="40QZ6wql6TzCuXdMmvd9e1tubXjXsxxxxxxxxxxxxxxxx"
https://redd.it/178w823
@r_bash
Reddit
Explore this post and more from the bash community
Help needed with noscript
Hi all,
I have the following noscript that will not execute.
I think the space in the TARGET string is causing an issue but if I echo the last line I get
which is correct.
What am I doing wrong?
TIA
​
#!/bin/bash
# Purpose = Sync Google Photos
VENV="/home/gregeeh/gphotos/venv/bin"
TARGET='"/home/gregeeh/media/Google Photos"'
APP=$VENV/gphotos-sync
FLAGS="--album Hintons --skip-video --omit-album-date --port 11354"
$VENV/python $APP $TARGET $FLAGS
https://redd.it/178ylr5
@r_bash
Hi all,
I have the following noscript that will not execute.
Error is gphotos-sync: error: unrecognized arguments: Photos. I think the space in the TARGET string is causing an issue but if I echo the last line I get
/home/gregeeh/gphotos/venv/bin/python /home/gregeeh/gphotos/venv/bin/gphotos-sync "/home/gregeeh/media/Google Photos" --album Hintons --skip-video --omit-album-date --port 11354which is correct.
What am I doing wrong?
TIA
​
#!/bin/bash
# Purpose = Sync Google Photos
VENV="/home/gregeeh/gphotos/venv/bin"
TARGET='"/home/gregeeh/media/Google Photos"'
APP=$VENV/gphotos-sync
FLAGS="--album Hintons --skip-video --omit-album-date --port 11354"
$VENV/python $APP $TARGET $FLAGS
https://redd.it/178ylr5
@r_bash
Reddit
Explore this post and more from the bash community
CLI tool to check the World Cup 2023 matches schedule in your terminal.
Just created a node CLI for Cricket World Cup 2023!🏆 Now you can get match schedules right in your terminal. Just type 'npx wc23-cli' to explore!
Check out the CLI: https://github.com/MoazIrfan/wc-cli
Stay updated with match schedules. Happy cricketing!🎉 #Node #CLI
https://redd.it/1794stc
@r_bash
Just created a node CLI for Cricket World Cup 2023!🏆 Now you can get match schedules right in your terminal. Just type 'npx wc23-cli' to explore!
Check out the CLI: https://github.com/MoazIrfan/wc-cli
Stay updated with match schedules. Happy cricketing!🎉 #Node #CLI
https://redd.it/1794stc
@r_bash
GitHub
GitHub - MoazIrfan/wc-cli: CLI to check the Cricket World Cup 2023 matches schedule in your terminal.
CLI to check the Cricket World Cup 2023 matches schedule in your terminal. - GitHub - MoazIrfan/wc-cli: CLI to check the Cricket World Cup 2023 matches schedule in your terminal.
Fuzzy find Emojis with fzf
I wrote a small noscript to get the latest Emoji database and display them in fzf. With an extra function you can also print them in vim 🥳
Script: https://raw.githubusercontent.com/SimonWoodtli/dotfiles/main/noscripts/emoji
https://i.redd.it/8aobk2cmfkub1.gif
https://redd.it/1795zfc
@r_bash
I wrote a small noscript to get the latest Emoji database and display them in fzf. With an extra function you can also print them in vim 🥳
Script: https://raw.githubusercontent.com/SimonWoodtli/dotfiles/main/noscripts/emoji
https://i.redd.it/8aobk2cmfkub1.gif
https://redd.it/1795zfc
@r_bash
An optimized way of checking / adding text to a file
I have a batch noscript. When I run that batch noscript, I want it to open a config file and check for two specific lines that are usually next to each other
myconf.cnf
phpengine
# For debugging only #
show-all-errors
What I'm trying to do is check if
And when matching those two lines, a way to toggle show-all-errors to be either commented or uncommented.
So I pretty much need the bash noscript to just check the file and see if those two lines exist, and then have control over adding a
I started trying to write code to add / remove the comment based on a matching line, but then I realized all the extra conditions
How to do it when there's a commented line in-between separating the two lines.
Adding the text to the file if the two lines don't exist.
So I'm not sure where the heck to go with this. And I could remove the commented line "
And the code I've got now really isn't crap, because all it does is detect if it's commented or uncommented
And I found some helpers for toggling comments on / off but this seems over-kill, and I doubt I'm even going in the right direction
https://redd.it/179pzc6
@r_bash
I have a batch noscript. When I run that batch noscript, I want it to open a config file and check for two specific lines that are usually next to each other
myconf.cnf
phpengine
# For debugging only #
show-all-errors
What I'm trying to do is check if
[phpengine] and #show-all-errors exist. (the show-all-errors has to be below [phpengine]And when matching those two lines, a way to toggle show-all-errors to be either commented or uncommented.
So I pretty much need the bash noscript to just check the file and see if those two lines exist, and then have control over adding a
# in front of #show-all-errors or removing the comment character.I started trying to write code to add / remove the comment based on a matching line, but then I realized all the extra conditions
How to do it when there's a commented line in-between separating the two lines.
Adding the text to the file if the two lines don't exist.
So I'm not sure where the heck to go with this. And I could remove the commented line "
#For debugging only #", but the noscript will auto-readd it on update, and I wanted a solution to just have it run and take care of it for me without manual edits to remove the line.And the code I've got now really isn't crap, because all it does is detect if it's commented or uncommented
if sudo grep -Eq '^ *show-all-errors' "/etc/php-engine/myconf.cnf"; then
# found match
fi
And I found some helpers for toggling comments on / off but this seems over-kill, and I doubt I'm even going in the right direction
comment()
{
local regex="${1:?}"
local file="${2:?}"
local comment_mark="${3:-#}"
sed -ri "s:^([ ]*)($regex):\\1$comment_mark\\2:" "$file"
}
uncomment()
{
local regex="${1:?}"
local file="${2:?}"
local comment_mark="${3:-#}"
sed -ri "s:^([ ]*)[$comment_mark]+[ ]?([ ]*$regex):\\1\\2:" "$file"
}
https://redd.it/179pzc6
@r_bash
Reddit
Explore this post and more from the bash community
A student in need for help
I'm trying to create a little program as an exercise that let the user input as many characters as possible in x seconds to calculate and output charactes per minutes.
I'm having a little problem that chatgpt can't solve. The timer in backgroung won't stop whaterver i try.
Thanks in advance
#!/bin/bash
clear
t=1
countdown() {
local seconds=$1
while (( $seconds >= 0 ))
do
sleep 1
((seconds--))
done
t=0
}
duration=5
countdown $duration &
echo "Enter characters within $duration seconds"
count=0
while (( t != 0 ))
do
read -sn 1 input
clear
((conta++))
echo $count
done
echo "Time expired"
sleep 1
clear
kill $1
echo "You entered: $count characters in $duration seconds"
​
https://redd.it/179v1rv
@r_bash
I'm trying to create a little program as an exercise that let the user input as many characters as possible in x seconds to calculate and output charactes per minutes.
I'm having a little problem that chatgpt can't solve. The timer in backgroung won't stop whaterver i try.
Thanks in advance
#!/bin/bash
clear
t=1
countdown() {
local seconds=$1
while (( $seconds >= 0 ))
do
sleep 1
((seconds--))
done
t=0
}
duration=5
countdown $duration &
echo "Enter characters within $duration seconds"
count=0
while (( t != 0 ))
do
read -sn 1 input
clear
((conta++))
echo $count
done
echo "Time expired"
sleep 1
clear
kill $1
echo "You entered: $count characters in $duration seconds"
​
https://redd.it/179v1rv
@r_bash
Reddit
Explore this post and more from the bash community
GitComic (Git Commit Icons)
I've just created a noscript that allows you to insert an icon 🙂 in your commits based on the type of modifications you've made in your repository.
If you want to start organizing your commits in a more professional 🧠 yet fun 🤪 way, head over here and take a look at the README. There, you'll find all the ℹ️ information you need. I'm sure you'll love it.
Example video 🎥 in the repo.
https://redd.it/17ad1hr
@r_bash
I've just created a noscript that allows you to insert an icon 🙂 in your commits based on the type of modifications you've made in your repository.
If you want to start organizing your commits in a more professional 🧠 yet fun 🤪 way, head over here and take a look at the README. There, you'll find all the ℹ️ information you need. I'm sure you'll love it.
Example video 🎥 in the repo.
https://redd.it/17ad1hr
@r_bash
GitHub
GitHub - vieitesss/GitComic: It allows you to insert an icon depending on the type of updates you have made in your code.
It allows you to insert an icon depending on the type of updates you have made in your code. - GitHub - vieitesss/GitComic: It allows you to insert an icon depending on the type of updates you have...
A student in need for help
#!/bin/bash
clear
t=$(date +%s)
duration=5
t=$(($t + $duration))
echo "Enter characters within $duration seconds"
count=0
while [ $(date +%s) -le $t ]
do
read -sn 1 input
clear
((count++))
echo $count
done
echo "Time expired"
sleep 2
clear
echo -e "You entered: $count characters in $duration seconds\n"
speed=$(($count * (60 / $duration)))
echo -e "Your TAPPING speed is $speed clicks per minute\n"
The program worked just fine until i tried not giving it any input, i noticed it stays in the while loop at the read forever and never gets to check again if the time passed.
What are your ideas, how could i write it so it constantly checks the passage of time?
https://redd.it/17amor3
@r_bash
#!/bin/bash
clear
t=$(date +%s)
duration=5
t=$(($t + $duration))
echo "Enter characters within $duration seconds"
count=0
while [ $(date +%s) -le $t ]
do
read -sn 1 input
clear
((count++))
echo $count
done
echo "Time expired"
sleep 2
clear
echo -e "You entered: $count characters in $duration seconds\n"
speed=$(($count * (60 / $duration)))
echo -e "Your TAPPING speed is $speed clicks per minute\n"
The program worked just fine until i tried not giving it any input, i noticed it stays in the while loop at the read forever and never gets to check again if the time passed.
What are your ideas, how could i write it so it constantly checks the passage of time?
https://redd.it/17amor3
@r_bash
Reddit
Explore this post and more from the bash community
Saving history, redux
I had posted several months ago about a problem I was seeing in git-bash on Windows. It involved saving history on exit.
The method I had been using was to have a noscript file that created a randomized file name based on date and save the history to that file. In my .bashrc, I had
trap ./bin/savehistory.sh EXIT,
and that noscript
$ cat bin/save\history.sh
#!/bin/bash
HISTFILE="/c/Users/ME/.hist/$(date +%d%b%y%H%M)$RANDOM"
history >& $HISTFILE
If I ran that noscript from the bash prompt, it would create an empty file with the correct name in the .hist directory.
I tried a lot of things to make this work, to no avail. Note that this still works on Linux.
Yesterday, I tried something different.
From my .bashrc
alias svh='history > "/c/Users/ME/.hist/$(date +%d%b%y%H%M)$RANDOM"
trap svh EXIT
This works on Windows git-bash.
https://redd.it/17auhmn
@r_bash
I had posted several months ago about a problem I was seeing in git-bash on Windows. It involved saving history on exit.
The method I had been using was to have a noscript file that created a randomized file name based on date and save the history to that file. In my .bashrc, I had
trap ./bin/savehistory.sh EXIT,
and that noscript
$ cat bin/save\history.sh
#!/bin/bash
HISTFILE="/c/Users/ME/.hist/$(date +%d%b%y%H%M)$RANDOM"
history >& $HISTFILE
If I ran that noscript from the bash prompt, it would create an empty file with the correct name in the .hist directory.
I tried a lot of things to make this work, to no avail. Note that this still works on Linux.
Yesterday, I tried something different.
From my .bashrc
alias svh='history > "/c/Users/ME/.hist/$(date +%d%b%y%H%M)$RANDOM"
trap svh EXIT
This works on Windows git-bash.
https://redd.it/17auhmn
@r_bash
Reddit
Explore this post and more from the bash community
How do I create a short-cut for a command in the shell config file?
From this:
We can create even a short‐cut for this command in your shell configuration file, which is either \~/.bashrc or \~/.profile:
># inspect the first and last 2 lines of a file
>
>
I tried placing the above line of code in the bashrc and source it but it throws a syntax error:
What exactly does this mean and how do I go about solving this? Where does the input go in this case?
​
Thanks!
https://redd.it/17b0aiy
@r_bash
From this:
We can create even a short‐cut for this command in your shell configuration file, which is either \~/.bashrc or \~/.profile:
># inspect the first and last 2 lines of a file
>
>
i() { (head -n 2; tail -n 2) < "$1" | column -t}I tried placing the above line of code in the bashrc and source it but it throws a syntax error:
syntax error: unexpected end of fileWhat exactly does this mean and how do I go about solving this? Where does the input go in this case?
​
Thanks!
https://redd.it/17b0aiy
@r_bash
Fuzzy find Gitmojis with fzf
I wrote another emoji noscript 🎉 This time for printing gitmojis in the terminal or vim.
​
* jq to filter gitmoji API
* fzf to fuzzy find
* curl to fetch Data
* vimrc func to paste within vim
* works with or without tmux session (fzf, fzf-tmux)
​
Gitmoji git commit convention: https://gitmoji.dev/
Script: https://github.com/SimonWoodtli/dotfiles/blob/main/noscripts/gitmoji
Demo: https://gifyu.com/image/S6r4A
https://redd.it/17b8qxm
@r_bash
I wrote another emoji noscript 🎉 This time for printing gitmojis in the terminal or vim.
​
* jq to filter gitmoji API
* fzf to fuzzy find
* curl to fetch Data
* vimrc func to paste within vim
* works with or without tmux session (fzf, fzf-tmux)
​
Gitmoji git commit convention: https://gitmoji.dev/
Script: https://github.com/SimonWoodtli/dotfiles/blob/main/noscripts/gitmoji
Demo: https://gifyu.com/image/S6r4A
https://redd.it/17b8qxm
@r_bash
gitmoji.dev
An emoji guide for your commit messages.
Bash tutorial hell.
https://unix.stackexchange.com/questions/759147/automate-traversing-a-directory-in-linux
I ask questions like these online. Problem being I don't yet understand the concepts and commands that they are using there.
So, I thought a good idea will be to keep continuing my bash education from udemy. I am continuing my course by Ralph Jensen and already through 80% of the course.
Few commands remaining are test commands, conditional constructs and symbolic links. But I feel this course hasn't done a good job preparing me for bash noscripting.
I've documented everything that I've learnt some place.
Any tips? The general advice seems to be to just automate stuffs you need irl. But not clear instruction and helpful.
https://redd.it/17bcxyb
@r_bash
https://unix.stackexchange.com/questions/759147/automate-traversing-a-directory-in-linux
I ask questions like these online. Problem being I don't yet understand the concepts and commands that they are using there.
So, I thought a good idea will be to keep continuing my bash education from udemy. I am continuing my course by Ralph Jensen and already through 80% of the course.
Few commands remaining are test commands, conditional constructs and symbolic links. But I feel this course hasn't done a good job preparing me for bash noscripting.
I've documented everything that I've learnt some place.
Any tips? The general advice seems to be to just automate stuffs you need irl. But not clear instruction and helpful.
https://redd.it/17bcxyb
@r_bash
Unix & Linux Stack Exchange
Automate traversing a directory in Linux?
Currently, I am doing full manual work.
find /home/bash_cookbook/bash_cookbook/glassfish/domains/blog/logs -mtime +7 -type f -name 'application.log_*' -exec rm {} \;
It takes me 1 hour to just typ...
find /home/bash_cookbook/bash_cookbook/glassfish/domains/blog/logs -mtime +7 -type f -name 'application.log_*' -exec rm {} \;
It takes me 1 hour to just typ...