Really easy :
git diff > patchfile.pch
and
patch -p1 < patchfile.pch
nJoy 😉
Really easy :
git diff > patchfile.pch
and
patch -p1 < patchfile.pch
nJoy 😉
How do I use bash while loop to repeat certain task under Linux / UNIX operating system? How do I set infinite loops using while statement? The bash while loop is a control flow statement that allows code or commands to be executed repeatedly based on a given condition. For example, run echo command 5 times or read text file line by line or evaluate the options passed on the command line for a script.
The syntax is as follows:
while [ condition ] do command1 command2 command3 done
command1 to command3 will be executed repeatedly till condition is true. The argument for a while loop can be any boolean expression. Infinite loops occur when the conditional never evaluates to false. For example following while loop will print welcome 5 times on screen:
#!/bin/bash x=1 while [ $x -le 5 ] do echo "Welcome $x times" x=$(( $x + 1 )) done
Here is a sample shell code to calculate factorial using while loop:
#!/bin/bash counter=$1 factorial=1 while [ $counter -gt 0 ] do factorial=$(( $factorial * $counter )) counter=$(( $counter - 1 )) done echo $factorial
To run just type: $ chmod +x script.sh $ ./script.sh 5 Output:
120
While loops are frequently used for reading data line by line from file:
#!/bin/bash FILE=$1 # read $FILE using the file descriptors exec 3<&0 exec 0<$FILE while read line do # use $line variable to process line echo $line done exec 0<&3
You can easily evaluate the options passed on the command line for a script using while loop:
......
..
while getopts ae:f:hd:s:qx: option
do
case "${option}"
in
a) ALARM="TRUE";;
e) ADMIN=${OPTARG};;
d) DOMAIN=${OPTARG};;
f) SERVERFILE=$OPTARG;;
s) WHOIS_SERVER=$OPTARG;;
q) QUIET="TRUE";;
x) WARNDAYS=$OPTARG;;
\?) usage
exit 1;;
esac
done
.......
..
Infinite for while can be created with empty expressions, such as:
#!/bin/bash while : do echo "infinite loops [ hit CTRL+C to stop]" done
You can do early exit with the break statement inside the whil loop. You can exit from within a WHILE using break. General break statement inside the while loop is as follows:
while [ condition ] do statements1 #Executed as long as condition is true and/or, up to a disaster-condition if any. statements2 if (disaster-condition) then break #Abandon the while lopp. fi statements3 #While good and, no disaster-condition. done
In this example, the break statement will skip the while loop when user enters -1, otherwise it will keep adding two numbers:
#!/bin/bash while : do read -p "Enter two numnbers ( - 1 to quit ) : " a b if [ $a -eq -1 ] then break fi ans=$(( a + b )) echo $ans done
To resume the next iteration of the enclosing WHILE loop use the continue statement as follows:
while [ condition ] do statements1 #Executed as long as condition is true and/or, up to a disaster-condition if any. statements2 if (condition) then continue #Go to next iteration of I in the loop and skip statements3 fi statements3 done
|
Using the Job Control of bash to send the process into the background:
|
nJoy! 😉
Simply do this:
SELECT UPDATE_TIME FROM information_schema.tables WHERE TABLE_SCHEMA = 'dbname' AND TABLE_NAME = 'tabname'
nJoy ;-)
Simple and easy :
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
nJoy 😉
Google Chrome is an alternative web browser beside Mozilla Firefox. It’s free and open source. But the problem Google Chrome on Backtrack 5 is Google Chrome can’t run in root mode. We know that Backtrack run the root mode by default. If you run the Google Chrome it won’t work. So if you want to install and run Google Chrome in root this is the tutorial.
apt-get install chromium-browser
Access the Chrome directory
cd /usr/lib/chromium-browser
And here we go, open chromium-browser with hexaedit to edit the hexa code of chromium-browser
hexedit chromium-browser
It is sometimes required especially when managing many servers to recognize the hardware setup you are running on especially if you have a zoo of different animals.Â
Great tool for getting detailed hardware report including bios versions and memory / processor info :
dmidecode
While the output varies slightly across distros and sometimes you need to install it e.g.
 yum -y install dmidecode
It is a great tool for understanding the underlying system and to know if you’re on a VM or not.
nJoy 😉
So the story goes like this :
wget http://sourceforge.net/projects/bacula/files/latest/download?source=files
tar zxvf bacula-*.tar.gz
cd bacula-<fiolder>
./configure –enable-client-only
make
make install
make install-autostart-fd
nJoy 😉
Step # 1: Stop the MySQL server process.
Step # 2: Start the MySQL (mysqld) server/daemon process with the –skip-grant-tables option so that it will not prompt for password.
Step # 3: Connect to mysql server as the root user.
Step # 4: Setup new mysql root account password i.e. reset mysql password.
Step # 5: Exit and restart the MySQL server.
Here are commands you need to type for each step (login as the root user):
# /etc/init.d/mysql stop
Output:
Stopping MySQL database server: mysqld.
# mysqld_safe --skip-grant-tables &
Output:
[1] 5988 Starting mysqld daemon with databases from /var/lib/mysql mysqld_safe[6025]: started
# mysql -u root
Output:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 4.1.15-Debian_1-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
mysql> use mysql;
mysql> update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
mysql> flush privileges;
mysql> quit
# /etc/init.d/mysql stop
Output:
Stopping MySQL database server: mysqld STOPPING server from pid file /var/run/mysqld/mysqld.pid mysqld_safe[6186]: ended [1]+ Done mysqld_safe --skip-grant-tables
# /etc/init.d/mysql start
# mysql -u root -p
Voila !
nJoy  😉
In file named after the interface you want to use as gateway:
e.g. /etc/sysconfig/network-scripts/route-eth0
Create entries :
ADDRESS=192.168.4.0
NETMASK=255.255.255.0
GATEWAY=192.168.1.250
NnJoy 🙂