Intereting Posts
libcodec и libcodec2-dev не существуют в Debian 8 Как preemption работает в Linux, когда программа имеет таймер менее 4 мс? Я приобрел у Amazon предустановленный, используемый, Asus Mini Notebook. Я нажал кнопку питания во время установки обновлений. необходимо установить пакеты на CentOS 7 Команда не найдена при запуске с sudo bash Проблема с символом ':' в скрипте Bash через SSH Как проверить (имитировать), сколько свободного пространства будет освобождено после удаления субблока btrfs? что означает @ в ls -l? squid access.log удалить записи старше 6 месяцев Создание терминального устройства для межпроцессного взаимодействия Обновление с Kubuntu 16.04 до Kubuntu 18.04 В чем разница между NF_NETLINK_CONNTRACK_EXP_DESTROY и NF_NETLINK_CONNTRACK_DESTROY? tslib: курсор мыши перемещается в противоположном направлении в поле выбора Исключение файлов в etckeeper с .gitignore не работает Объединение командной строки в защищенные паролем беспроводные сети в Ubuntu, Arch Linux или других дистрибутивах?

строка 7: [: ожидаемое выражение echo: integer

Это мой первый скрипт для Shell / Bash, и я борюсь с синтаксисом. Первый аргумент командной строки – это строка, а вторая – номер.

x='echo $1|wc -m' count=0 while [ $count -le $x ] #line 7 do count=$(( $count+1 )) echo $1 done if [ $2 -lt 0 ] then echo 'Negative' else echo 'Positive' fi 

Должен быть:

 x=$(echo "$1" | wc -m) 

или:

 x=`echo "$1" | wc -m` 

Вы процитировали подкоманду, так что вы ее не выполнили.