File: copy_func.sh

package info (click to toggle)
ceph 18.2.7%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 1,186,140 kB
  • sloc: cpp: 6,278,388; ansic: 3,507,431; python: 372,964; asm: 216,381; java: 133,450; sh: 125,043; xml: 39,398; ruby: 32,026; makefile: 29,004; javascript: 23,994; cs: 18,980; perl: 9,708; sql: 7,833; lisp: 5,920; pascal: 3,109; ada: 1,681; yacc: 478; awk: 188; f90: 55; php: 1
file content (22 lines) | stat: -rwxr-xr-x 731 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#
# copy_file(<filename>, <node>, <directory>, [<permissions>], [<owner>]
# 
# copy a file -- this is needed because passwordless ssh does not
#                work when sudo'ing.
#    <file> -- name of local file to be copied
#    <node> -- node where we want the file
#    <directory> -- location where we want the file on <node>
#    <permissions> -- (optional) permissions on the copied file
#    <owner> -- (optional) owner of the copied file
#
function copy_file() {
    fname=`basename ${1}`
    scp ${1} ${2}:/tmp/${fname}
    ssh ${2} sudo cp /tmp/${fname} ${3}
    if [ $# -gt 3 ]; then
       ssh ${2} sudo chmod ${4} ${3}/${fname}
    fi
    if [ $# -gt 4 ]; then
       ssh ${2} sudo chown ${5} ${3}/${fname}
    fi
}