<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Скрипт запускается, но ничего не делает]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=38016</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=38016&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Скрипт запускается, но ничего не делает».]]></description>
		<lastBuildDate>Tue, 17 Mar 2015 17:30:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Скрипт запускается, но ничего не делает]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=449843#p449843</link>
			<description><![CDATA[<p>Я не стал вникать, что там неправильно, но вот скрипт,<br />действительно обходящий каталоги рекурсивно. Называется ~/bin/set644_b<br /></p><div class="codebox"><pre><code>#!/bin/bash

#parameter is a directory name
/bin/chmod 755 &quot;$1&quot;
cd &quot;$1&quot;
#echo &quot;enter in&quot; &quot;$1&quot; &gt;&gt; ~/set644_b.out
for flnm in `/bin/ls -1` ; do
if [ -d &quot;$flnm&quot; ] ; then
#echo &quot;directory&quot; &quot;$flnm&quot; &gt;&gt; ~/set644_b.out
~/bin/set644_b &quot;$flnm&quot;
else
if [ -f &quot;$flnm&quot; ] ; then
#echo &quot;file&quot; &quot;$flnm&quot; &gt;&gt; ~/set644_b.out
/bin/chmod 644 &quot;$flnm&quot;
fi
fi
done
cd ../</code></pre></div><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Tue, 17 Mar 2015 17:30:39 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=449843#p449843</guid>
		</item>
		<item>
			<title><![CDATA[Скрипт запускается, но ничего не делает]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=449808#p449808</link>
			<description><![CDATA[<p>Доброго времени суток. Скрипт должен рекурсивно просматривать папки и менять расширение на первую букву у файлов, размер которых меньше заданного во втором аргументе. Первый аргумент - директория. Еще скрипт не должен менять сам себя. Что у меня неправильно?<br /></p><div class="codebox"><pre><code>#!/bin/bash
if [[ &quot;$1&quot; == &quot;?&quot; ]]
    then
            echo &quot;скрипт меняет расширение на первую букву у тех файлов,\n размер которых меньше заданного во втором аргументе. &quot;
        exit 1
fi
case $# in
        2) dirname=$1
          fsize=$2 ;;
        0) read -p &quot;Введите адрес директории &gt;&gt;&gt;  &quot; dirname
          read -p &quot;Введите размер файлов для замены суфикса &gt;&gt;&gt;  &quot; fsize ;;
        *) echo &quot;Использование: скрипт директория размер&quot;
          exit 1 ;;
esac
if [[ -d &quot;$dirname&quot; ]]
    then
            find &quot;$dirname&quot; -type f -size -$fsize not -samefile BASH_SOURCE  | while IFS=&#039;\n&#039; read file
            do
                dir_name=$(dirname $file)
                file_name=$(basename $file)
                prefix=$(expr substr $file_name 1 1)
                suffix=${file_name##*.}
                newfilename=$dirname/${file_name%%$suffix}$prefix
            done
    else
            echo &quot;Неправильное имя/адрес директории&quot;
        exit 1
fi</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (mike.rzn)]]></author>
			<pubDate>Tue, 17 Mar 2015 15:41:40 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=449808#p449808</guid>
		</item>
	</channel>
</rss>
