我正在编写一个bash脚本作为实用工具。
我现在面临的挑战是: - 使用我的工具的用户将在bash环境中运行 - 但是,其中一些可能默认使用krcsh或tcsh。他们可能会在那里设置别名或配置。
因此,我需要提示/指导用户在安装过程中解决此问题。我的第一个挑战:我怎么想在install.sh中知道用户的默认shell?
知道“默认”shell,我可以提示并引导用户进行必要的转移。
我的测试代码:
我的结果:
1 /显然是错误的。它返回当前的shell,这是我的install.sh(bash)
2 /我很怀疑。这似乎是我之前运行过的历史。它没有显示我的默认配置shell。我的情况,我的终端默认shell是bash,我运行tsch用于测试目的。所以脚本解析了错误的信息,虽然我的默认shell是tcsh。然后它将帮助我在安装过程中将配置从tcsh移植到bash。答案 0 :(得分:0)
如果要检查正在使用的shell,可以使用以下方法:
echo $0
会向您显示正在运行的程序,如果您要检查当前使用的shell。echo $SHELL
- 使用此命令,您可以在正在运行的终端中阅读用户的默认shell。如果您想轻松提示,可以将echo $SHELL
放在脚本中需要显示当前正在使用的shell的部分。
如果您的脚本设计为在bash shell中运行,请不要忘记放置#!/bin/bash
!