# Tag lines from files or stdin with a string prefix or suffix self=tl # Parse options out while getopts 'p:s:' opt ; do case $opt in # Prefix p) pref=$OPTARG ;; # Suffix s) suff=$OPTARG ;; # Unknown option \?) printf >&2 '%s: Unknown option %s\n' \ "$self" "$opt" exit 2 ;; esac done shift "$((OPTIND-1))" # Print each line as we read it, adding the tags cat -- "${@:--}" | while IFS= read -r line ; do printf '%s%s%s\n' "$pref" "$line" "$suff" done td> index : dotfiles.git
Personal scripts and configuration filesTom Ryder
aboutsummaryrefslogtreecommitdiff
path: root/bin/mkcp.sh
blob: 10308263ad83cf8023f98755e4018ba508336be0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Copy files into created directory in one call

# Check we have at least two arguments
if [ "$#" -lt 2 ] ; then
    printf >&2 'mkcp: Need at least one source and destination\n'
    exit 2
fi

# Get the last argument (the directory to create)
for dir ; do : ; done

# Create it, or bail
mkdir -p -- "$dir" || exit

# Copy all the remaining arguments into the directory (which will be the last
# argument)
cp -R -- "$@"