shell-cut: вы должны указать список байтов, символов или полей

Я пытаюсь получить выходные данные аргументов командной строки в обратном порядке. Но я получаю ошибку при этом.

Это код:

#!/bin/bash

str=$@
len=$#
space=" "
echo "No. of arguments = $len"
echo "Entered arguments = $str"
while [ $len -ne 0 ]
do
        tmp=`echo $str | cut -d " " f $len`
        rev=$rev$tmp$space
        len=`expr $len - 1`
done
echo "Arguments in reverse = $rev"

И когда я запускаю скрипт, я получаю эту ошибку:

robin@robin-VirtualBox:~/lx$ ./s1.sh one two three
No. of arguments = 3
Entered arguments = one two three
cut: you must specify a list of bytes, characters, or fields
Try 'cut --help' for more information.
cut: you must specify a list of bytes, characters, or fields
Try 'cut --help' for more information.
cut: you must specify a list of bytes, characters, or fields
Try 'cut --help' for more information.
Arguments in reverse =    
5
задан 28 April 2014 в 05:29

1 ответ

Вы просто отсутствуете эти - знак перед Вашим -f аргумент cut. Я смог выполнить Ваш сценарий и иметь его функция правильно после создания что одна модификация.

0
ответ дан 28 April 2014 в 05:29

Другие вопросы по тегам:

Похожие вопросы: