trulala Posted March 16, 2006 Report Posted March 16, 2006 lyudi dobriye, nujno napisat bash skript, kotori bi zapuskal komandu dla failov s opredelonim rasshereniyen v dannoi direktorii. v moyom sluchaet eto komanda msgfmt s parametrom -o. koro4e u menya velikoye mnojestvo po failov kotoriye nujno perevesti v mo. nujen skript kotori v ukazanoi direktorii chital bi vse .po faili i dla kajdego zapuskal bi komandi msgfmt file.po -o file.mo, nazvaniye mo faila doljno bit toje chto i po. pomogte plz napisat script. Quote
Ineu Posted March 16, 2006 Report Posted March 16, 2006 Как я понял, проблема состоит только в том, что результирующий файл получается с двойным расширением. Можно в исходном отсекать расширение при помощи cut. То есть алгоритм выглядит как для каждого из выбранных по маске { отделить имя от расширения преобразовать имя.расширение в имя.новое_расширение } Quote
trulala Posted March 16, 2006 Author Report Posted March 16, 2006 prichom tut dvoinoye rasshireniye? dopustim est fail kio_remote.po, nado zapuskat dla nego komandu: msgfmt kio_remote.po -o kio_remote.mo i poluchitsa binarni fail kio_remote.mo. no problema chto etim po failov u mena navalom, naverno shtuk 1000 ili bolshe. nado avtomatizirovat proces. algoritm mojet bit i takim: 1. vibrat fail po rasshireniyu (filtr) 2. ordelit imya ot rasshirebiya 3. zapustit komandu i v argument output file vpisat eto samoye otdelonoye imya +.mo nu i tak s kajdim failom po alfavitnomu poradku P.S. v programirovanii ya polni profan! Quote
Ineu Posted March 16, 2006 Report Posted March 16, 2006 Trulala писал(а) Чтв, 16 Марта 2006 17:53 algoritm mojet bit i takim: 1. vibrat fail po rasshireniyu (filtr) 2. ordelit imya ot rasshirebiya 3. zapustit komandu i v argument output file vpisat eto samoye otdelonoye imya +.mo nu i tak s kajdim failom po alfavitnomu poradku Мда... Вы удивитесь, но я написал ___АБСОЛЮТНО___ то же самое Цитата: prichom tut dvoinoye rasshireniye? dopustim est fail kio_remote.po, nado zapuskat dla nego komandu: msgfmt kio_remote.po -o kio_remote.mo i poluchitsa binarni fail kio_remote.mo. no problema chto etim po failov u mena navalom, naverno shtuk 1000 ili bolshe. nado avtomatizirovat proces. P.S. v programirovanii ya polni profan! Причем тут программирование? Программы можешь не писать, но баш ты выучить обязан! Хотя бы основы системы выучить - без этого в Линухе трудно придется... for i in *.po; do msgfmt "$i" -o "$i.mo" done Вот тут мы и получаем двойное расширение. Для Вашего примера результирующий файл будет называться kio_remote.po.mo. Чтобы этого не происходило, мы cut'ом отрезаем имя и состыковываем его с новым расширением for i in *.po; do j=`cut .......` # man cut msgfmt "$i" -o "$j" done Полностью не привел, чтобы Вы не поленились хотя бы в ман заглянуть. Quote
trulala Posted March 16, 2006 Author Report Posted March 16, 2006 for i in *.po; do msgfmt "$i" -o "${i%%po}mo"; done uje done Quote
Ineu Posted March 16, 2006 Report Posted March 16, 2006 Ну и зачем было голову морочить, если есть готовое решение? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.