EC2 Scripts

December 9th, 2024
cli, tech
I do a lot of work on ec2 instances, and one thing that makes this easier is having a few scripts for manipulating them. These are very small, small enough to go in my .bashrc, but still make my life a lot easier.

The first one is start_ec2:

alias start_ec2='aws ec2 start-instances --instance-ids i-NNNN'

I have an instance I do most of my work on, and this command starts it. Way better than logging into the AWS Console like I used to do.

After a few seconds I run:

function ssh_ec2() {
  ADDR="$(aws ec2 describe-instances \
           --instance-ids i-NNNN \
           --query 'Reservations[].Instances[].PublicDnsName'
           --output text)"
  if [ $? != 0 ] || [ -z "$ADDR" ]; then
    echo "Instance not running."
    return
  fi

  scp "ec2-user@$ADDR:.full_history" \
      /path/to/ec2-full-history-backup.txt

  ssh "ec2-user@$ADDR"
}

This figures out the IP of the instance, copies down my (very important) full shell history, and logs me in over ssh.

I don't have a command for shutting down remotely: I just run sudo shutdown -h now while logged in.

The last command, and probably my favorite, is resize_ec2:

function resize_ec2j() {
  aws ec2 modify-instance-attribute \
   --instance-id i-NNNN \
   --instance-type "$1"
}

For example, resize_ec2 c6a.xlarge or resize_ec2 c6a.32xlarge. Depending on what I'm doing I might need very different specs, and I don't want to pay $4.90/hr when I only need a $0.15/hr machine. It does take a mildly annoying few minutes for a machine that has just shut down to transition into a state where you can resize it, but it's not too bad.

Referenced in:

Comment via: facebook, lesswrong, mastodon, bluesky, substack

Recent posts on blogs I like:

Donation recommendations for effective altruists (July 2026)

My recommendation for donors who are American citizens or permanent residents is that they donate directly to high-value political candidates.

via Thing of Things July 22, 2026

Let's Taboo the V-Word

Read this post on Substack.

via Home July 12, 2026

Agentic test processes, LLM benchmarks, and other notes on agentic coding from Galapagos Island

I've been using AI fairly heavily since last November and the whole thing is a funny experience. An agent will do something that, if a human did it, you'd immediately fire them. My reaction, of course, is to act as if this is great and spin up a t…

via Posts on July 3, 2026

more     (via openring)