Server for Information Technologies ������ ��������������
������� �������������� ����������
(095) 932-9212, 932-9213, 939-0783
E-mail: [email protected]
������ �������� ����(!) ������������� ���������� CIT Forum CD-ROM

EXPR(1)

��������
expr - ��������� ���������� ��� ���������

���������

 expr  �������� ...

��������
������� expr �������� ���� ��������� ��� ���������. ��������� ������������ �� ����������� �����. �������� ��������� ������ ���� ��������� ���������. �������, ������� ��� shell'� ����������� �����, ������ ���� ������������. �������, ��� 0 ������������ � �������� �����, � �� ��� ����������� ������ ������� ��������. ���������, ���������� ������� ��� ������ ����������� �������, ������ ���� ��������� � �������. ����� ������ ������� ����� ������ ���� �����. ���������� ������������� ����� ����� - 32-������, � �������������� ����.

���� �������� ������ ������ �������� � ������� ������������ �����������, �������� � ������ ����������� ��������� � �������� ������. ����� ���������, ������� ������ ���� ������������, ����� \.

��������� \| ���������
���� ������ ��������� �� ������ � �� �������, �� ��� ������ �����������; � ��������� ������ - ������ ���������.

��������� \& ���������
���� ��� ��������� �� ������ � �� �������, �� ����������� ������ ������ ���������; � ��������� ������ - 0.

��������� { =, \>, \>=, \<, \<=, != } ���������
���� ��� ��������� - �����, ��� ������������ ��� �����; � ��������� ������ - ��� ������� ��������. ���� ������� �������, ����������� ������ 1; � ��������� ������ - 0.

��������� { +, - } ���������
�������� � ��������� ������������� ����������.

��������� { \*, /, % } ���������
���������, ������� � ��������� ������� �� ������� ������������� ����������.

��������� : ���������
�������� ������������� : ������������ ������ �������� �� ������, ������� ������ ���� ���������� ����������. ��������� ����������� ��������� ��� ��, ��� � � ��������� ed(1), �� ����������� ����, ��� ��� ������� ���������� ��� "������������" � ������ ^ �� ����� ������������ ��������. ������ �������� ������������� ���������� ����� ������� �������������� �������� (0 ��� �������). ����� ��������� ����������� \( ... \), ����� �������� ����� ������� ���������.

�������

  1. ���������� �� 1 shell-���������� a.
      a=`expr $a + 1`
    
  2. ��������� �� ����������� ����� ����� �������� ����� (�� ���� �� /usr/bin/ex ���������� ex). ��������: ��������� ������ / ����� ��������� ��� �������� �������.
      expr $a : '.*/\(.*\)' \| $a
    
    �������� ������ ����� ������� �������. ���������� // ��������� ��������, ��������� � ��������� �������� /, � �������� ���������.
      expr //$a : '.*/\(.*\)'
    
  3. ������� ����� �������� � �������� ���������� V.
      expr $V : '.*'
    

��. �����
ed(1), sh(1).

���� ���������� � �������� ��������� ������� ���������� ��������� expr ���������� ��������� ���� ����������:

  0    �������� ��������� ������� �� ���� � �� ������ ��-
       ����� ��������.
  1    �������� ��������� ���� ����  ���  ������  �������
       ��������.
  2    ��������� �����������.

�����������
������� expr ������ ��������� ��������� �� �������:

  syntax error 
     ��� ������� � ���������� ��� ���������.
  non-numeric argument 
     ��� �������� ���������� �������������� ��������  �
     ���������� �������� ��������.

��������
��������, ��� �� ����� �������� �������� ���������� a � �����-���� ��������, ������� ��� expr ������ �����, ��������, �� ������ ���������. ����� $a �� ����� ���� �������� ������ ���������. ��� ��� ��������� �������������� �������������� shell'��, �� �������

  expr $a = '='
����� ���������� ���
  expr = = =
��� ������������� �����������. � �������� ������� ������������� ������������ ����� �������:
  expr X$a = X=
�� ���� �������� ��������� ������ � ����� ��������, ��� ����� �� ������ �� ��������� ���������, ������ ��������� �������� �������������� ������

Comments: [email protected]
Designed by Andrey Novikov
Copyright © CIT