处理用户输入_传递参数_读取脚本名
1. 使用位置变量$0获取在命令行中运行的shell脚本名
#!/bin/bash
# handling the $0 command-line parameter
# 可以使用位置变量$0获取在命令行中运行的shell脚本名。这在编写包含多种功能或生成日志消息的工具时非常方便。
echo this script name is $0.
# bash pass_parameter1.sh
# ./pass_parameter1.sh ,返回的脚本名会包含路径
# 剥离脚本的运行路径。——basename:该命令可以返回不包含路径的脚本名。
# using basename with the $0 command-line parameter
echo "************* baseneme *************"
name=$(basename $0)
echo this script name is $name.
bash pass_parameter1.sh 运行结果:
./pass_parameter1.sh 运行结果:
2. 生成日志消息
#!/bin/bash
echo "******* this script can produce log of run time ********"
scriptname=$(basename $0)
echo the $scriptname ran at $(date) >> scripttrack.log
exit
# ./pass_parameter2.sh
运行结果:
ll
cat scripttrack.log