Я думаю, что это имеет некоторое отношение к файлам схемы gconf2, расположенным в /usr/share/gconf/schemas
.
Попытайтесь зарегистрировать схемы снова:
$ sudo gconf-schemas --register-all
gconf-schemas(8)
говорит:
--register-all
clean up the GConf database and register all schemas again.
This might be neccessary if your gconf database becomes corrupted.
Один способ использовать perl
:
perl -lane 'printf qq[%s\n], join q[ ], sort @F' infile
Вывод:
ab bc
ab bc
bc cd ef
bc cd ef
ab bc cd
ab bc cd ef gh
Один способ использовать GNU awk:
awk '{
split($0, arr);
asort(arr);
for (i=1; i<=length(arr); i++) {
printf "%s ", arr[i] };
printf RS
}
' infile
Вывод:
ab bc
ab bc
bc cd ef
bc cd ef
ab bc cd
ab bc cd ef gh
Вот еще одно решение perl
, похожее на ответ @Birei, но более лаконичное:
$ perl -anle 'print "@{[sort @F]}"' file
ab bc
ab bc
bc cd ef
bc cd ef
ab bc cd
ab bc cd ef gh
В скрипте оболочки :
while read n
do
echo $(echo $n | tr " " "\n" | sort )
done < infile
(Что слишком сильно вилкирует, предопределяет решение perl или gnu awk)
-l
, Вы не должны печатать новую строку.print join " ", sort @F
будет достаточен. – glenn jackman 27.04.2012, 20:20