Friday, December 9, 2016

Rename all JPG MP4 files in the current directory to date_time file name format.

Rename all files in the currect directory to date_time file name format


sudo exiftool '-filename<CreateDate' -d %y-%m-%d_%H-%M-%S.%%ue  -r -ext JPG  .

Rename files with MOV extention to MP4 extention.

Rename all files with .MOV extention to .MP4 extention.

sudo rename -v 's/\.MOV$/\.MP4/'  *.MOV

Extracting images from video file

Get image from input.flv file at 14.435 sec and save to out.png file

avconv -i input.flv -ss 00:00:14.435 -f image2 -vframes 1 out.png
avconv -i input.flv -ss 00:00:14.435 -f image2 -vframes 1 out.png

Adding text annotations to JPG image.

Adding annotation "Copyright" at lower right corner of image at font size 20, filled with white color and black shadow,  saved to file IMG_ANNOTATED.JPG

sudo convert IMG.JPG  -font Arial -pointsize 20 -draw "gravity SouthEast fill black text 0,12 'Copyright' fill white text 1,11 'Copyright'"  IMG_ANNOTATED.JPG 

Adding GIF image to JPG image with transparent area.

1. Install ImageMagick:
sudo apt-get install imagemagick

2. Using convert command from ImageMagick make white part of Arrow.gif transparent and save in file arrow_transparent.gif :
sudo convert Arrow.gif -fuzz 10% -transparent white arrow_transparent.gif 

3. Merge arrow transparent into IMG.JPG at affset 300,300 and save file in RESULT.JPG file:
sudo convert IMG.JPG -page +300+300 arrow_transparent.gif -flatten RESULT.JPG

Monday, May 9, 2016

How to remove all files which are older than 5 days

How to list all files older than 5 days ?
> 
find /path/to/files* -mtime +5

How to delete all files older than 5 days ?
> 
 find /path/to/files* -mtime +5 -exec rm {} \;

Tuesday, April 22, 2014

When Ubuntu does not start interfaces from eth0

When Ubuntu after starting does not have eth0, but instead created eth2 etc.
Go to edit file etc/udev/rules.d/70-persistent-net.rules and assign proper eth names to mac adresses.


# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:aa:80:d7", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:aa:80:e1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"


Thursday, February 13, 2014

Remote python debugging using Eclipse

1. Untar file pysrc.tar  into directory p2t

2. Start Debugger Server in Eclipse



3. Insert following code into python source code and execute.

        import sys
        sys.path.append(r'../pysrc')
        import pydevd
        pydevd.settrace('10.51.2.91', port=5678) # IP of your Eclipse machine
or
        pydevd.settrace('10.51.2.91', port=5678, stdoutToServer=True, stderrorToServer=True)

where IP is adress of machine running Eclipse program 

Wednesday, January 15, 2014

Ubuntu : Bonding interfaces eth1 eth2 eth3 into one logical bond0

Bonding interfaces 

 In the file /etc/network/interfaces 


 # Bonding 
up /sbin/modprobe -o bonding_ext1 bonding mode=4 miimon=500 updelay=0 xmit_hash_policy=layer3+4
up /sbin/ifenslave bond0 eth1 eth2 eth3

Checking if/which interfaces were bonded 
cat /proc/net/bonding/bond0

Tuesday, September 13, 2011

How to install python as Web executable in Ubuntu 8.04

1. Install Apache2
   > sudo apt-get install apache2
2. Install python apache module
    > sudo apt-get install libapache2-mod-python

3. Modify Apache2 configuration in the file /etc/apache2/sites-available/default
adding

Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On


4. Restart apache
> sudo /etc/init.d/apache2 restart

5. Create file hello.py  in directory /var/www


def index():
c=  "Hello World"
return c;


6. Start Web browser at URL  http://localhost/hello.py

Sunday, October 24, 2010

How to create animation with python and PyODE package.


Falling Boxes in HD.  PyODE animation. from Krzysztof J Pakula on Vimeo.


Instruction for Linux Ubuntu users.
1. You already should have version of Python installed by default on your machine. 
2. Install packages PyODE and cgkit 
    > sudo apt-get install  python-pyode 
    > sudo apt-get install  python-cgkit 
3. Download python script pyode_ex_hd.py .  
4. By executing this python script you will create pyode_ex_hd.rib file 
    > python pyode_ex_hd.py
5. Install Pixie renderman program. ( If you have problem finding renderman install from this deb file) 
6. Download and compile surface shader file  occsurf2.sl    
    > sdrc occsurf2.sl 
7. Render the rib file   
    > rndr pyode_ex_hd.rib  
    Rendering the rib file will create series of picture files in pyode_ex_hd.001.tif , ..., pyode_ex_hd.300.tif
    It will take few hours depending on the speed of your computer.
8. Install ImageMagick on your Ubuntu system
    > sudo apt-get install imagemagick
9. Using ImageMagick Convert all tif files to png format.
    > convert pyode_ex_hd.001.tif  pyode_ex_hd.001.png
       ........
    > convert pyode_ex_hd.300.tif  pyode_ex_hd.300.png     
10. Using VirtualDubMod program create single uncompressed avi file from tif files.
    This step shall be done on Windows machine. 
    You must use vcf configuration file   pyode_ex_hd.vcf 
    >VirtualDubMod   /spyode_ex_hd.vcd  /x
11. Compress avi file to mp4 format using H.264 encoder.   

Thursday, May 13, 2010

Testing SOAPVASP interafce Python performance using "timeit"

1. Start SOAPVASP interface on port 7000
$ python interfaceSOAPVASP.py -p 7000

2. Run on the same machine
$ python -m timeit "import http_sender; http_sender.SimpleHTTPSender.send(host
='127.0.0.1', port ='7000', method='GET')"
100 loops, best of 3: 11.5 msec per loop

Wednesday, February 24, 2010

Password free ssh logging to remote computer

1. Create rsa id
> cd
> ssh-keygen -t rsa

2. Copy rsa id to remote computer as user me
> ssh-copy-id -i ~/.ssh/id_rsa.pub me@10.19.169.5

3. Test by
> ssh me@10.19.169.5

The computer at 10.19.169.5 shall NOT ask you for password

Shell script to execute command on the list of computers

The list of computers is given as a text list of IP adresses named "all.list". Each IP in saparate line

To execute commands on each computer create file all.sh with following text
for i in `cat all.list | awk '{ print $i}'` ; do echo $i; ssh $i $1 ; done

Execute commands by
> source ./all.sh "ls -la"

To execute command as root on remote computer with ip 10.19.148.65 using ssh

To execute command as root on remote computer with ip 10.19.168.65
> ssh root@10.19.148.65 "ls -la"

To execute text replacement on remote computer using perl script
> ssh root@10.19.148.65 "perl -p -e 's/oldtext/newtext/g' oldfile >newfile"

How to replace text in many files using single perl command

To replace text "localhost" to "localnet" in all files with extension text execute following
> perl -p -e "s/localhost/localnet/g" *.txt

To add new line after new text "localnet" use new line code \x0a
> perl -p -e "s/localhost/localnet\x0anew line/g" *.txt

To insert TAB in replaced text use code \x09
> perl -p -e "s/localhost/localnet\x0anew line\x09rest of line after tab/g" *.txt

Followers

About Me