понедельник, 26 октября 2009 г.

Мелочевка — скрипт fork

Часто бывает нужно, находясь в X-терминале, запустить графическую программу с некоторыми параметрами, но так, чтобы сразу от этого самого терминала «отвязалась». В общем-то для этого нужно перенаправить выводящие потоки и отправить в бэкграунд символом «&». Строго для упрощения сего я написал себе маленький скриптик, назвав его «fork» (я знаю, что название не вполне корректно):

#!/bin/bash

if [ -z "$TEMP" ]; then
 TEMP='/tmp';
fi;

$@ > "$TEMP/$$.stdout.log" 2> "$TEMP/$$.stderr.log" &

echo "fork: \"$@\" : $$"

Выполнение действия во всех подкаталогах — скрипт subs

Собственно ничего такого особенного. Мне это понадобилось для вызова mp3unicode, ну и вместо конкретного скрипта сделал универсальный:

#/bin/bash

$@;
for f in *; do
 if [ -d "$f" ]; then
  cd "$f";
  subs "$@";
  cd ..;
 fi;
done;
Для демонстрации рекомендую выполнить:
subs pwd