linux中利用shell脚本条件执行linux命令

本文介绍如何在Linux中使用Shell脚本实现条件执行,通过创建脚本start.sh,用户可以选择跳转到预设的目录,如代码、数据或软件目录。通过简单的交互,脚本能够根据用户的选择执行相应的cd命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux中利用shell脚本条件执行命令

 

在linux环境中,我们总会有一些命令需要经常用,例如经常跳转到某些目录下或者执行某些命令,输入一连串的命令是很烦的,此时我们可以预先写一些脚本然后根据我们的选择自动执行命令,那岂不是完美,本脚本就是为此而生的(以跳转不同的目录举例,当然也可以执行其他命令,这时候只需要类比写shell命令即可) 
1、首先建一个shell脚本start.sh

#!/bin/bash
cd_dir_1="/export/songhongwei/code"
cd_dir_2="/export/songhongwei/data"
cd_dir_3="/export/songhongwei/soft"
echo ""
echo " 1: cd $cd_dir_1"
echo " 2: cd $cd_dir_2"
echo " 3: cd $cd_dir_3"
echo ""
read -p "Please input the choice:"  idx
#if [[ -z "$idx"]];then
#  echo "no choice,exit"
if [[ '1' = "$idx" ]];then
  eval "cd $cd_dir_1"
elif [[ '2' = "$idx" ]];then
  eval "cd $cd_dir_2"
elif [[ '3' = "$idx" ]];then
  eval "cd $cd_dir_3"
else
  echo "no choice,exit!"
fi
echo ""

2、然后把该脚本放在某个目录下,例如本人放在了/export/songhongwei/soft/sh 
3、编辑~/.profile文件把sh目录添加到环境变量即可

PATH="$HOME/bin:$HOME/.local/bin:/export/songhongwei/soft/sh:$PATH"

4、在shell或linux终端中可以在任何目录下直接访问该命令

. start.sh 或 source start.sh

这里写图片描述

注: 
(1)步骤4中,start.sh 前的 点 不能忘记,代表的是在当前bash环境下读取并执行FileName中的命令,否则会新开子进程执行FileName中的命令,此时cd无法再当前bash环境跳转。 
source、sh、bash、./执行脚本的区别:http://blog.youkuaiyun.com/yun90/article/details/22667829 
(2)添加sh目录到环境变量目的是一方面可以在任何目录下执行FileName中命令,另外可以在该sh目录下添加多个此类脚本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值