How to handle those "smart" device names at the CLI?
Dotan Cohen
dotancohen at gmail.com
Sat May 14 16:17:12 UTC 2011
On Sat, May 14, 2011 at 19:07, Johnny Rosenberg <gurus.knugum at gmail.com> wrote:
> Anyway, since there are different tools for different file systems I
> wrote a very simple function.
>
> function label () {
> case $# in
> 1 | 2)
> Device=$1
> Label=$2
> FileSystem=$(cat /proc/mounts | grep $Device | awk '{print $3}')
> case ${FileSystem} in
> "ext2" | "ext3" | "ext4")
> sudo e2label $Device $Label;;
> "vfat")
> sudo dosfslabel $Device $Label;;
> "ntfs")
> sudo ntfslabel $Device $Label;;
> *)
> echo "Sorry, no support currently for ${FileSystem}.";;
> esac;;
> *)
> echo "Syntax: label device [name]";;
> esac
> }
>
> I added the function to ”~/.bash-functions”, which is a file that will
> run whenever I login. On my system that is, because I have the
> following lines added to my ”~/.bashrc” file:
>
> if [ -f ~/.bash-functions ]; then
> . ~/.bash-functions
> fi
>
> So now it works like an alias, kind of. Right now I have two devices
> connected: sdb1 and sdc1. The first one is a vfat device and the other
> one a ext3 device. The label function works for both of them:
> $ label /dev/sdb1
> [sudo] password for guraknugen:
> Backup
> $ label /dev/sdc1
> Transcend
> $
>
> Of course it's easy to add support for other file systems as well, I
> just made it simple for my own use…
> And of course I take no responsibility what so ever for any damages
> caused by that function.
>
> Kind regards
>
> Johnny Rosenberg
> ジョニー・ローゼンバーグ
>
Nice! I have a collection of code snippets and this one is going in
there. If as intended I ever get around to publishing them should I
attribute this to you?
--
Dotan Cohen
http://gibberish.co.il
http://what-is-what.com
More information about the ubuntu-users
mailing list