NAME
xc.gd (eXtraCopy-GooD) - a paste bin
SYNOPSIS
This is a paste bin. It tries to be minimal but do enough to be useful.
DESCRIPTION
It's sometimes useful to be able to share small pieces of text or images.
Particularly snippets of code, screenshots or other such things. This site
allows that, while being as simple as possible.
Just type on the website or use curl to create a paste:
curl -d 'some string' xc.gd
echo foo | curl -d @- xc.gd
PUT is also supported:
curl -T file.txt xc.gd
Updating a paste with auth is supported by using a HTTP password.
Set up some credentials first (do this once):
uuid=$(uuidgen)
echo "machine xc.gd login \"\" password $uuid" >> ~/.netrc
Then use curl with the --netrc (-n) option to send the credentials:
url="$(curl -nd 'some data' xc.gd)"
echo $url
curl -nd 'new data' $url
Pastes are accessible at https://xc.gd
If you use curl on the paste URL, you'll get the raw content (or otherwise
arrange for a "Accept: text/plain" header to be sent). Try it:
curl xc.gd/xc.1
Illegal or questionable content (doxxing, copyright violations, etc.) is not
welcome, it will be deleted and you will be banned.
WRAPPER SCRIPT
Given the simple curl usage a premade script isn't provided, something as
simple as this will work:
mkdir -p ~/bin
cat > ~/bin/xc <<'EOF'
#!/bin/sh
[ -e ~/.netrc ] || touch ~/.netrc # curl errors if no .netrc
curl --no-progress-meter -nT "${1:--}" https://xc.gd/"$2"
EOF
chmod +x ~/bin/xc
This allows:
# Pipe content
echo foo | xc
# Upload some-file
xc some-file
# Pipe content with a filename provided
echo foo | xc - foo.txt
# ANSI support too!
tdfiglet -r Hello | xc
TIPS
Sometimes you want to upload something from the command line and then edit it
a bit. This site deliberately doesn't use cookies to avoid having a tracking
ID on each paste, however it does use a temporary UUID associated with each
tab.
If you've followed the steps above to use a uuidgen based auth token with
curl, submit something using "curl -n", then open your JavaScript console and
enter:
window.name = 'xxxx-yyyy-zzzz'
location.reload()
Then that paste will be editable. (You can turn this into a bookmarklet.)
(If you don't want multiple pastes to be linked together then simply close
and reopen your browser tab and/or don't use the -n option with curl.)
RETENTION
Pastes are deleted after a varying period up to around a year. The larger the
data the sooner it will be deleted. No guarantees either way; if other people
paste larger stuff we'll have to force expiry to be sooner.
If you want to delete a paste sooner, leave the tab open and press the X or
use the curl method above and run:
curl -nX DELETE https://xc.gd/...
PRIVACY
We respect your privacy, but unfortunately some people like to abuse sites
like this. This means we keep logs of paste creation, including the
following:
- Timestamp
- Source IP address
- User-Agent
- Per tab UUID (see above for details)
SEE ALSO
This takes some inspiration from bin, found at https://github.com/WantGuns/bin
CONTACT
For abuse, etc. https://forms.gle/CQT9146FvSZSdxXE8