0

所以我正在尝试学习如何为 Linux 操作系统编写脚本,所以我编写了这个下载和安装脚本。虽然,我知道任何优秀的 linux 编码器都会认为这是绝对的滑行工作,但到目前为止它的工作正常,所以我目前只有一个错误。

代码:

#!/bin/sh
###################################
#Lystics Core Linux Code v1       #
#                                 #
# Starting Date 4/14              #
#                                 #
# Ending Date ~                   #
#                                 #
###################################


clear

#Define Veriables
dir='./LysticsCode/'
url='http://lysticscode.host-elite.com/Linux/Bash%20Scripts/LCode.sh'
file=$(basename "$url")

echo LysticsCode for Linux v1 Installer
echo
read -r -p "Are you sure you wish to install? [Y/n] " a
if [ "$a" = 'n' -o "$a" = 'N' ]; then


#Not going to install
echo 'Exiting The Installation. Thank You! =D'
exit 1;
else
#Set up screen
clear
echo LysticsCode for Linux v1
echo First Installation
echo ''
#Installing
echo Downloading Packages...
curl -o "$dir$file" "$url"
echo ''
echo ''
echo 'Download Complete!'
eval "alias lcode=/root/LysticsCode/Main.sh"
exit 1;
fi


#End Script
$SHELL

我想要做的是添加一个命令别名,这样可以更轻松地访问已安装的文件。我尝试使用 eval "alias lcode=DIR" 并没有用。与 $(alias lcode=dir) 相同

任何人都可以帮忙吗?

4

2 回答 2

0
$source /root/LysticsCode/Main.sh

将工作。

于 2013-04-15T13:35:48.787 回答
0

别名不会继承给子进程。您不应该在脚本末尾调用子 shell,而是说将脚本保存到名为 的文件myenv.sh中,在当前 shell 中执行脚本:

. myenv.sh
于 2013-04-15T07:07:43.950 回答