Script to Edit GNS3 Topology Files

I have recently been doing more of the GNS3Vault labs and have gotten tired of changing the image name each time I do a lab. The script below is the result. I just change into the directory where the topology.net file is located and run this command.

The are a couple of tricks to notice about the sed line. First, I replaced the sed delimiter from “/” to “:” to make it easier to work with directory names. Second, the single quotes around $PWD expands the variable before the command is run.

I hope this helps someone else.

#!/bin/bash
# gns3-vault-fix
# 2011-05-29 Jud Bishop
# Change image file for GNS3Vault topology.net configuration files.

PWD=`pwd`
SAVE=$PWD/topology.net.0
CONF=$PWD/topology.net

# Back up the original topology.net file.
mv $CONF $SAVE

# A couple of things to notice on this line.
# 1.  I replaced the sed delimiter from "/" to ":" to
#     make it easier to work with directory names.
# 2.  The single quotes around $PWD expands the variable before
#     sed goes to work.
sed -e 's:image .*:image = '$PWD'/c3640-a3js-mz.124-25b.bin:g' <$SAVE >$CONF
This entry was posted in Routing. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s