English 中文(简体)
我的贝壳脚本有什么问题?
原标题:What s wrong with my shell script

I have a shell script which has a for loop that prints the value of an array element. The array size is 2 but when running the for loop with that array I m not getting proper output.

以下是 shell 脚本 :

#!/bin/bash

arry=$(ls /home/developer/.ssh/  | grep ".pub")
declare -a ARR
i=0
for key in $arry
do
  ARR[i]=$(echo $key | sed  s/.pub//g )
  i=$((i+1))
done
echo ${#ARR[@]}
## the below for loop is not iterating as expected
for pri in $ARR
do
 echo $pri
done

而不是现在提供输出

2
a
heroku

上述代码产生:

2
a

上面的外壳代码有什么问题?

我比较新 来弹空剧本 所以请原谅我的代码 你感觉不好

Attaching screenshot of the output enter image description here

最佳回答
#!/bin/bash
arry=(/home/developer/.ssh/*.pub)

ARR=(${arry[@]%%.pub})    # strip the extensions

echo "${#ARR[@]}"

for pri in "${ARR[@]}"
do
    echo "$pri"
done

使用球代替 >ls

使用数组代替字符串 。

扩展时的引号变量 。

问题回答

暂无回答




相关问题
Parse players currently in lobby

I m attempting to write a bash script to parse out the following log file and give me a list of CURRENT players in the room (so ignoring players that left, but including players that may have rejoined)...

encoding of file shell script

How can I check the file encoding in a shell script? I need to know if a file is encoded in utf-8 or iso-8859-1. Thanks

Bash usage of vi or emacs

From a programming standpoint, when you set the bash shell to use vi or emacs via set -o vi or set -o emacs What is actually going on here? I ve been reading a book where it claims the bash shell ...

Dynamically building a command in bash

I am construcing a command in bash dynamically. This works fine: COMMAND="java myclass" ${COMMAND} Now I want to dynamically construct a command that redirectes the output: LOG=">> myfile.log ...

Perform OR on two hash outputs of sha1sum

I want perform sha1sum file1 and sha1sum file2 and perform bitwise OR operation with them using bash. Output should be printable i.e 53a23bc2e24d039 ... (160 bit) How can I do this? I know echo $(( ...

Set screen-title from shellscript

Is it possible to set the Screen Title using a shell script? I thought about something like sending the key commands ctrl+A shift-A Name enter I searched for about an hour on how to emulate ...

热门标签