<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Подстановка переменных</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html</link>
    <description>Уважаемые коллеги!&lt;br&gt;Я хочу получить список файлов по маске, написал такой скрипт:&lt;br&gt;&lt;br&gt;#!/bin/bash&lt;br&gt;&lt;br&gt;FileMask=&quot;*.xml &amp;#124; grep -v &apos;Default&apos;&quot;               # маска файла, формат такой же, как и в командной строке&lt;br&gt;SrcPath=&quot;/usr/ScriptSL/USSD/in&quot;                    # папка-источник, в которой надо найти все файлы по маске&lt;br&gt;FileListFN=&quot;/usr/ScriptSL/USSD/XML_20090827.lst&quot;   # название файла, в который надо вывести названия файлов&lt;br&gt;&lt;br&gt;# Скрипт должен выводить все файлы, которые подходят по маске, в один столбец, вырезать из них имя папки-источника и класть в указанный файл&lt;br&gt;ls -1 &quot;$SrcPath&quot;/&quot;$FileMask&quot; &amp;#124; sed s-&quot;$SrcPath&quot;/-- &amp;gt; &quot;$FileListFN&quot;&lt;br&gt;&lt;br&gt;Вот то, что получается, если сделать echo строки выше:&lt;br&gt;&lt;br&gt;ls -1 /usr/ScriptSL/USSD/in/*.xml &amp;#124; grep -v &apos;Default&apos; &amp;#124; sed s-/usr/ScriptSL/USSD/in/-- &amp;gt; /usr/ScriptSL/USSD/XML_20090827.lst&lt;br&gt;&lt;br&gt;Это как раз то, что мне нужно, такая строка работает в shell, если её скопипэйстить. Однако, при попытке запуска shell вываливает мне то полный список файлов, подходящих к маск</description>

<item>
    <title>Подстановка переменных (SLario)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html#5</link>
    <pubDate>Fri, 28 Aug 2009 06:20:21 GMT</pubDate>
    <description>angra, спасибо за решение! Возможно, я действительно пока не врубился в концепцию. У меня всё заработало, именно такого результата я и хотел добиться!&lt;br&gt;</description>
</item>

<item>
    <title>Подстановка переменных (angra)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html#4</link>
    <pubDate>Fri, 28 Aug 2009 05:21:15 GMT</pubDate>
    <description>Ваша проблема в том, что вы не понимаете элементарного - пайпу(&amp;#124;) в командах обрабатывает шелл, а не ls. Решить изначальную задачу можно по разному, например так:&lt;br&gt;eval &quot;ls -1 $SrcPath/$FileMask &amp;#124; sed s- $SrcPath/-- &amp;gt; $FileListFN&quot;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Подстановка переменных (SLario)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html#3</link>
    <pubDate>Thu, 27 Aug 2009 11:34:54 GMT</pubDate>
    <description>Спасибо, но я хотел бы обойтись без find. Правильно сформированная строка работает так, как мне нужно, так что мне осталось только корректно подставить значения переменных в строку и запустить её! Похоже, что ls берёт не целиком сформированную строку &quot;$SrcPath&quot;/&quot;$FileMask&quot;, а только до первого пробела, и использует значения, перечисленные в FileMask, как список входных директорий для команды. Я пробовал экранировать пробелы, указав в константе FileMask=&quot;*.xml&#092; &amp;#124;&#092; grep&#092; -v&#092; &apos;Default&apos;&quot;, но это не помогло. Есть ли способ сначала сформировать текстовую строку полностью, а затем отправить её на выполнение всю целиком, без разделения?&lt;br&gt;</description>
</item>

<item>
    <title>Подстановка переменных (phpcoder)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html#2</link>
    <pubDate>Thu, 27 Aug 2009 11:25:26 GMT</pubDate>
    <description>&amp;gt;Хм, а если поставить маску &lt;br&gt;&amp;gt;FileMask=&quot;*.xml&quot; &lt;br&gt;&amp;gt;, то скрипт работает. С полной маской (исключающей все файлы, название которых &lt;br&gt;&amp;gt;включает слово Default) я получаю такой вывод: &lt;br&gt;&amp;gt;&amp;#124;: No such file or directory &lt;br&gt;&amp;gt;grep: No such file or directory &lt;br&gt;&amp;gt;-v: No such file or directory &lt;br&gt;&amp;gt;&apos;Default&apos;: No such file or directory &lt;br&gt;&lt;br&gt;Советую использовать find.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Подстановка переменных (SLario)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/8414.html#1</link>
    <pubDate>Thu, 27 Aug 2009 11:18:37 GMT</pubDate>
    <description>Хм, а если поставить маску &lt;br&gt;FileMask=&quot;*.xml&quot;&lt;br&gt;, то скрипт работает. С полной маской (исключающей все файлы, название которых включает слово Default) я получаю такой вывод:&lt;br&gt;&amp;#124;: No such file or directory&lt;br&gt;grep: No such file or directory&lt;br&gt;-v: No such file or directory&lt;br&gt;&apos;Default&apos;: No such file or directory&lt;br&gt;</description>
</item>

</channel>
</rss>
