如何使用 Unix Shell 编程反转字符串?

Bash 是一个 shell 或命令行解释器。它是一种层级编程语言,可以理解并执行用户输入的命令或可以从脚本中读取命令。本质上,Bash 或 Shell 允许类 Unix 系统和 Windows 的用户通过 Linux 的 Windows 子系统使用基于文本的命令控制操作系统的最内部组件。

在本文中,我们将讨论一个 Shell 脚本要解决的问题。我们得到一个字符串,我们需要使用 Shell Programming 打印该字符串的反转。例如,

Input : str = “ Hello ”
Output : “ olleH ”
Explanation : Reverse order of string “ Hello ” is “ olleH ”.

Input : str = “ yam ”
Output : “ may ”

寻找解决方案的方法

  • 声明两个字符串,一个存储给定的字符串,另一个存储反转的字符串。

  • 找出给定字符串的长度。

  • 使用 for 循环将字符串从 [length - 1]th 索引遍历到 1。

  • 将每个字符附加到 reversed_string 变量。

  • 最后,使用 echo 打印 reversed_string。

示例

#!/bin/bash
# declaring variable to store string
# and catching the string passed from shell
str="$1"
reversed_string=""
# finding the length of string
len=${#str}
# traverse the string in reverse order.
for (( i=$len-1; i>=0; i-- ))
do
   reversed_string="$reversed_string${str:$i:1}"
done
# printing the reversed string.
echo "$reversed_string"

输入

Hello
输出结果
olleH