0

我想制作启动脚本,在启动时更改另一个脚本中的 2 行,或者可能不是另一个脚本,而是修改当前脚本来做同样的事情。这是我当前用于 ftp 镜像的脚本。

用户名必须是我的主机名,这样我就不需要为每个新设备修改此脚本,而只需更改我的设备的主机名。有人可以帮我实现这一目标吗?

#!/bin/bash
login="username"
pass="pass.username"
host="10.10.10.12"

base_name="$(basename "$0")"
lock_file="/home/mit/$base_name.lock"
trap "rm -f $lock_file" SIGINT SIGTERM
if [ -e "$lock_file" ]
then
    echo "$base_name is running already."
    exit
else
    touch "$lock_file"
    lftp -u $login,$pass $host << EOF
    mirror --exclude-glob lost+found/ -n -e --use-cache  /music/ /music/
    quit
EOF
    rm -f "$lock_file"
    trap - SIGINT SIGTERM
    exit
fi
4

1 回答 1

0

我为我的问题找到了解决方案。这是我想要的工作方式的脚本。

#!/bin/bash
sitecode=`cat /etc/hostname`;
login="${sitecode}"
pass="pass.${sitecode}"
host="10.10.10.12"

base_name="$(basename "$0")"
lock_file="/home/mit/$base_name.lock"
trap "rm -f $lock_file" SIGINT SIGTERM
if [ -e "$lock_file" ]
then
    echo "$base_name is running already."
    exit
else
    touch "$lock_file"
    lftp -u $login,$pass $host << EOF
    mirror --exclude-glob lost+found/ -n -e --use-cache  /music/ /music/
    quit
EOF
    rm -f "$lock_file"
    trap - SIGINT SIGTERM
    exit
fi
于 2015-10-25T19:46:33.537 回答