Saturday, December 7, 2013
Copy a tree structure but just get all the files which match a pattern
rsync -avm --include='*.ogg*' -f 'hide,! */' parsifal parsifal-oggs
I think the hide thing was to stop it copying directories that didn't have any ogg files, but I'm not sure anymore.
Xubuntu Rip Audio CD
Sound Juicer seems to not work for me and I can't be bothered to figure out why.
Asunder seems to do exactly the same thing, only it works.
sudo apt-get install lame asunder
It needs lame to rip to mp3
Asunder seems to do exactly the same thing, only it works.
sudo apt-get install lame asunder
It needs lame to rip to mp3
Monday, August 26, 2013
Installing R and R Studio on Ubuntu 13.04 "Raring Ringtail"
Using the mirror at UCLA:
sudo add-apt-repository "deb http://cran.stat.ucla.edu/bin/linux/ubuntu raring/"
Installing the gpg key for R packages
gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -
sudo apt-get update
Installing R and the libjpeg62 library needed by R Studio
sudo apt-get install r-base libjpeg62
Getting the pre-built deb package and installing it:
wget http://download1.rstudio.org/rstudio-0.97.551-i386.deb
sudo dpkg -i rstudio-0.97.551-i386.deb
Friday, July 26, 2013
Wacom Tablet Aspect Ratio for Widescreen
Recently purchased a Wacom Bamboo Pen graphics tablet. In its default setup, tracing a coin on the tablet draws an oval (I think that's because the tablet's 4:3 and my monitor is 16:9, but it may be something more arcane due to a dual monitor setup).
This command seems to make the aspect ratio correct whilst allowing me to reach all parts of my main screen.
xinput set-int-prop "Wacom Bamboo Connect Pen stylus" "Wacom Tablet Area" 32 0 00 23175 8600
This command seems to make the aspect ratio correct whilst allowing me to reach all parts of my main screen.
xinput set-int-prop "Wacom Bamboo Connect Pen stylus" "Wacom Tablet Area" 32 0 00 23175 8600
Tuesday, June 25, 2013
Preventing Postgresql from Autostarting just because it's Installed on Ubuntu
sudo update-rc.d -f postgresql remove
Friday, June 21, 2013
Upgrading from loop-aes to dmcrypt
Once upon a time, I had an encrypted external disk that I would mount thus:
# losetup -e AES128 /dev/loop1 /dev/sdb1
# fsck /dev/loop1
# mount /dev/loop1 /mnt/wd
# ls /wd
There are those that say that the modern way to do this is:
# apt-get install cryptsetup
# cryptsetup -c aes-plain -s 128 -h sha256 create wd /dev/sdb1
# cryptsetup -c aes-plain -s 128 -h sha256 create wd /dev/sdb1
# fsck /dev/mapper/wd
# mount /dev/mapper/wd /mnt/wd
You can then remove the mount with
# umount /mnt/wd
# cryptsetup remove wd
You can then remove the mount with
# umount /mnt/wd
# cryptsetup remove wd
Saturday, May 18, 2013
Copying Audio CDs on Ubuntu ( with cdrdao )
You should be able to (assuming that your cd is called foo) rip the data using:
cdrdao read-cd foo.toc
and then write it using:
cdrdao write foo.toc
For various reasons too annoying and mysterious to explain, I ended up using:
sudo cdrdao write --driver generic-mmc-raw foo.toc
to write, but that's probably just the peculiarities of my dell mini netbook / lite-on external drive
cdrdao read-cd foo.toc
and then write it using:
cdrdao write foo.toc
For various reasons too annoying and mysterious to explain, I ended up using:
sudo cdrdao write --driver generic-mmc-raw foo.toc
to write, but that's probably just the peculiarities of my dell mini netbook / lite-on external drive
Friday, January 11, 2013
Debian / Ubuntu Package Commands ( apt-get / apt-file / apt-cache )
sudo apt-get update
sudo apt-get upgrade --dry-run
sudo apt-get upgrade
apt-cache search maven # too much information
apt-cache search ^maven$ # misleading information
apt-cache search mvn # no information
apt-file search mvn # too much information
apt-file search ^mvn$ # no information
which mvn
apt-file search /usr/bin/mvn # glory
apt-cache show maven2 # description and dependencies
apt-cache showpkg maven2 # package info
apt-cache showsrc maven2 # source files
Thursday, January 10, 2013
Website Debugging with Curl : The Web Browser of the Gods
The Web Browser of the Gods
watch -d -n 1 curl -sv -b cookiejar.txt -c cookiejar.txt http://localhost:8080
For Gods who are mostly interested in the headers:
watch -d -n 1 curl -sv -b cookiejar.txt -c cookiejar.txt -o delete.me http://localhost:8080
Long Version
Curl's a nice way to analyse what's going on with a website:
When debugging a server running on your own machine:
curl http://localhost
If it's on port 8080
curl http://localhost:8080
If you're after a sub-path
curl http://localhost:8080/favicon.ico
I prefer:
curl -sv http://localhost:8080
-s turns off the information about download percentage, progress
-v adds the details of the header transaction
You can send both data and progress messages to a file with:
curl -sv http://localhost:8080 2&>curl.out
Poll the website every second, highlighting changes with:
watch -d -n 1 curl -sv http://localhost:8080
Pass in a cookie thus:
curl -sv http://localhost:8080 -b "yo=doom"
See the cookies that come back:
curl -sv http://localhost:8080 -c -
Save cookies that come back:
curl -sv http://localhost:8080 -b "yo=doom" -c cookiejar.txt
Or read and write cookies from a cookie file like:
curl -sv http://localhost:8080 -b cookiejar.txt -c cookiejar.txt
Finally, you can throw away the document itself and just display transaction and the cookies with:
curl -sv http://localhost:8080 -b "cook=ie" -c /dev/stderr >/dev/null
watch -d -n 1 curl -sv -b cookiejar.txt -c cookiejar.txt http://localhost:8080
For Gods who are mostly interested in the headers:
watch -d -n 1 curl -sv -b cookiejar.txt -c cookiejar.txt -o delete.me http://localhost:8080
Long Version
Curl's a nice way to analyse what's going on with a website:
When debugging a server running on your own machine:
curl http://localhost
If it's on port 8080
curl http://localhost:8080
If you're after a sub-path
curl http://localhost:8080/favicon.ico
I prefer:
curl -sv http://localhost:8080
-s turns off the information about download percentage, progress
-v adds the details of the header transaction
You can send both data and progress messages to a file with:
curl -sv http://localhost:8080 2&>curl.out
Poll the website every second, highlighting changes with:
watch -d -n 1 curl -sv http://localhost:8080
Pass in a cookie thus:
curl -sv http://localhost:8080 -b "yo=doom"
See the cookies that come back:
curl -sv http://localhost:8080 -c -
Save cookies that come back:
curl -sv http://localhost:8080 -b "yo=doom" -c cookiejar.txt
Or read and write cookies from a cookie file like:
curl -sv http://localhost:8080 -b cookiejar.txt -c cookiejar.txt
Finally, you can throw away the document itself and just display transaction and the cookies with:
curl -sv http://localhost:8080 -b "cook=ie" -c /dev/stderr >/dev/null
Monday, January 7, 2013
List Source for Bash Functions
If you use alias, then just typing alias will give you all the defined aliases, and alias alias_name will tell you what a particular alias does. For functions defined in .bashrc and other places, you can use:
declare -f
which will give you the names of all functions currently defined, and:
type function_name
which will give you the source for a particular function.
(declare -F will give names and sources, like alias does, but it's usually too much information)
Subscribe to:
Posts (Atom)