我想知道如何在文本编辑器中创建 shell 脚本。
这就是我在文本编辑器中的内容。
#!/bin/bash
mkdir -p temp
cd temp
if [ $1 > $2 ] ;
then
echo $1
else
echo $2
fi
./max.sh 4 6
./max.sh -2 -5
./max.sh 7 -3
所以基本上在文本编辑器中我想创建一个名为 max.sh 的 shell 脚本,以便在它下面我可以通过它传递参数,但在同一个文本编辑器中。
为了更清楚地说明:
我希望 if 语句位于名为 max.sh 的脚本内,因此在其下面我可以使用参数调用 max.sh,它将起作用。
答案1
你想要的叫做功能:
#!/bin/bash
max() {
if [ "$1" -gt "$2" ] ;
then
printf %s\\n "$1"
else
printf %s\\n "$2"
fi
}
max 4 6
max -2 -5
max 7 -3
进一步阅读:
答案2
你可以按照你的要求做这样的事情:
#!/bin/bash
mkdir -p temp
cd temp
cat <<\_script_lines_ > max.sh
#!/bin/bash
if [ "$1" -gt "$2" ] ;
then
printf '%s\n' "$1"
else
printf '%s\n' "$2"
fi
_script_lines_
chmod u+x max.sh ### make the script excutable.
# Use the script:
./max.sh 4 6
./max.sh -2 -5
./max.sh 7 -3
但Wildcard已经推荐的功能似乎使用起来更合理。
答案3
如果您愿意对其进行编程,您可以获取一个脚本来打开第二个甚至第三个控制台窗口,并将其用于输入/输出,例如从其他文件读取、写入,但使用控制台代替。
我不知道 bash 的语法是什么,你需要谷歌一下或者在 stackoverflow 上再次询问。