From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 7 May 2004 12:00:48 +0500 From: Andrew Fefilov To: community@altlinux.ru Message-ID: <20040507070048.GA10900@faa.lan.blok-caf.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit Subject: [Comm] bash trouble X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.4 Precedence: list Reply-To: community@altlinux.ru List-Id: Mailing list for ALT Linux users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 May 2004 07:00:50 -0000 Archived-At: List-Archive: List-Post: Добрый день, уважаемые. Вот наткнулся на непонятки в bash scripting. Сижу грепаю man bash, но пока не просветвляет. Может кто подскажет, если не в лом. Ситуация такая - скриптику через аргуметы передается имя файла, в котором имеется несколько пробелов, идущих подряд. Видимо, bash обрабатывает строку аргументов, разбивая ее на позиционные параметры, которые он считает разделены пробелами. В результате этого, мой аргумет приводится к виду, когда вместо несколько идущих пробелов остается только один. Поскольу это имя файла - то сие неприемлемо. Вот для наглядности: [faqa@faa 444]$ ./proba "/ttt/kkk/lll kkk" /ttt/kkk/lll kkk [faqa@faa 444]$ cat ./proba #!/bin/bash echo $1 Как видно из примера, в аргументе между "lll" и "kkk" стоит два пробела. А в выводе скрипта уже остается только один. Как бы эти грабельки обойти? -- С уважением, Фефилов Андрей.