The UNIX and Linux Forums  


Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Сценарий для обновления значения для параметров gmahesh2k UNIX для чайников Вопросы И Ответы 1 07-14-2008 10:53 PM
Позиционные параметры shalu @ IBM UNIX для чайников Вопросы И Ответы 2 11-22-2007 07:58 AM
Позиционные параметры ericelysia UNIX для чайников Вопросы И Ответы 15 10-23-2005 04:11 PM
Позиционные параметры Google Shell программирование и сценарии 2 09-26-2003 02:51 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 07-16-2008
nmk nmk is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Сообщений: 2
Сброс Позиционные параметры значения

Привет,

Может ли какой-либо одной предоставить Unix команды для сброса позиционных параметров?

См. ниже пример, когда я должен пройти 2 параметров Shell1.sh.

Шаг 1). ./Shell1.sh 2 3
успешно выполнена, то я казнены (следующий шаг только) тот же сценарий оболочки, на этот раз не прошло параметров.

Шаг 2). ./Shell1.sh
Это также успешно выполнен, потому что она считает (предыдущие значения) 2 И 3 в качестве позиционных параметров, как я не reseted них.

Спасибо заранее.
Old 07-16-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Модератор
  
 

Регистрация: Sep 2007
Местонахождение: Германия
Сообщения: 2,311
Я не понимаю. Как известно, сценарий бывшего параметры? Вы экспортировать их или записать их в файл?
Old 07-16-2008
nmk nmk is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2008
Сообщений: 2
Привет zaxxon,

Как известно, сценарий бывшего параметры?
Как я знаю, если мы однажды присвоить значение для позиционных параметров, те будут оставаться до тех пор, пока же мы переназначить ними же самое произошло и в моем случае.

Вы экспортировать их или записать их в файл?
Я не экспортирующих или не в письменном виде файла.

Я новичок в Unix И оболочки сценариев исправить меня, если я ошибаюсь исправить меня выше.

Ниже приводится содержание Shell1.sh:
если [$ #! \u003d 2]
тогда
Эхо "Нет параметров передаются не равна 2"
еще
Эхо $ 1
Эхо $ 2
Эхо "завершена"
FI


Ниже поток исполнения И их результаты:

. ./Shell1.sh 2 3
2
3
Завершен
. ./Shell1.sh
2
3
Завершен


Во второй раз я должен получить вывод как "Нет параметров прошло не равно 2", но она не была happened.This поэтому мне нужно знать команду сбросить позиционных параметров, может у разделяю команду, если вы знать.

Спасибо за вашу помощь.
Old 07-16-2008
fpmurphy's Avatar
fpmurphy fpmurphy is offline Forum Staff  
Модератор
  
 

Регистрация: Декабрь 2003
Откуда: Florida
Сообщений: 1937
Этот вопрос был поднят несколько раз на этом форуме. То, что вы видите это ожидаемое поведение вашего корпуса, поскольку вы точку включая т.е. источников Shell1.sh.
Old 07-16-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Модератор
  
 

Регистрация: Sep 2007
Местонахождение: Германия
Сообщения: 2,311
Теперь я понимаю, что это значит, OK ...
Существует ничто, как сбросить оболочку сценарии, как правило, не помню, что-либо без письменного его в файл или экспорта на окружающую среду. Поэтому ничто не сбрасываются.
Проблема с вашим сценарием является линия
Цитата:
F [$ #! \u003d 2]
, которые вы должны попробовать с


Код:
if (( $# != 2 ))

Двойные круглые скобки рассматривать в качестве значения чисел (арифметика), а не как строки, так что он должен работать сейчас.

Пример:

Код:
root@isau02:/data/tmp/testfeld> cat script.ksh
#!/usr/bin/ksh

echo $#

if (( $# != 2 )); then
        echo "Hey! This is not 2 parameters!"
else
        echo "Everything is fine"
fi

exit 0
root@isau02:/data/tmp/testfeld> ./script.ksh  b lala
2
Everything is fine
root@isau02:/data/tmp/testfeld> ./script.ksh  b lala lal
3
Hey! This is not 2 parameters!
root@isau02:/data/tmp/testfeld> ./script.ksh  yo
1
Hey! This is not 2 parameters!


EDIT: Ах, не заметить его источников, забыл свой пост
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 09:18 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0