gpt4 book ai didi

linux - 制作一个程序,接受用户输入数字 1-7,然后根据用户选择的数字显示命令。 [ bash -CentOS]

转载 作者:太空宇宙 更新时间:2023-11-04 12:53:39 25 4
gpt4 key购买 nike

正如标题所说,我正在尝试制作一个程序,让用户输入数字 1-7,然后为每个数字显示相应的命令。

我遇到的问题是找到一种将每个数字设置为命令的好方法。

起初,我想做这样的事情。

OSI=$(uname -a)
echo $OSI

但问题是实际上将其实现为一个循环。假设用户被提示如下:

 "Enter a number:"

用户输入数字1,数字1就是OSI。那么如果用户选择数字 2,它需要显示不同的命令等等。

对于像我这样的初学者来说,这有点太复杂了。我已经阅读了论坛和不同的帖子,但我无法找出正确的命令来实现这一点。

我试过做这样的事情,但失败得很惨:

#!/bin/bash

read -p "Enter a number:" n1 n2 n3 n4 n5 n6 n7
if n1=1; then
uname - a
else n2=2; "different command"
fi

我意识到我对 bash 完全一窍不通。我不是要任何人来解决这个问题,只是以一种对我有意义的方式给我一些指示。

谢谢。

最佳答案

试试这个经过测试的版本:

#!/bin/bash --

printf "menu items:\n 1) uname -a\n 2) date\n q) exit\n"
read -p "Enter your choice: " response

if [ -z "$response" ] ; then
printf "Choice invalid\n"
exit 1
fi
if [ "$response" = q ] ; then
exit 0
fi
if [ "$response" = 1 ] ; then
uname -a
elif [ "$response" = 2 ] ; then
date
else
printf "Choice invalid\n"
fi

如@EdMorton 所写,case 是更好的选择。

关于linux - 制作一个程序,接受用户输入数字 1-7,然后根据用户选择的数字显示命令。 [ bash -CentOS],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36377983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com