Вывод MySQL и терминальная работа правильно; проблема состоит в том, что текст в базе данных маркирован как latin1
, но на самом деле закодированный как utf8
.
Это может быть зафиксировано
в MySQL, преобразовывающем через binary
проигнорировать неправильное кодирование:
UPDATE table SET column=CONVERT(CONVERT(column USING binary) USING utf8) WHERE id=123;
Ваши синтаксические анализы команды df -t
вывод для вычислений количества используемого inodes, т.е. примерно количества файлов, которые были созданы в файловой системе, содержащей этот каталог.
Солярис только сообщает об общем и свободном inodes:
Solaris # df -t /home/jlliagre
rpool1/export/home/jlliagre: 20775669 blocks 20775669 files
total: 69672960 blocks 20775865 files
На Linux более близкая команда df -i
. IUsed
столбец показывает количество используемого inodes и IFree
каждый показывает количество свободного inodes.
Linux # df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/root_vg-lv_root
1048576 57730 990846 6% /
Таким образом, Linux, эквивалентный из Вашей команды Solaris, был бы:
for i in /opt/aa /opt/aa/data /opt/aa/bb; do
echo -n "$i "; df -i $i | awk 'NR > 1 {print $2}'
done
Отметьте это если /opt/aa
, /opt/aa/data
и /opt/aa/bb
принадлежите той же файловой системе, число, о котором сообщают, будет тем же для каждого из этих каталогов, которые не могли бы быть тем, что Вы хотите.
На Linux я использовал бы:
find /opt/aa -type f -xdev| wc -l
find /opt/aa/data -type f -xdev | wc -l
find /opt/aa/bb/oracle -type f -xdev | wc -l
Но это могло быть ненадежно, если Вы не корень.
find folder -type f
распечатает список всего Вашего файла в папке. -mount
использование для не поиска в точку монтирования и limitate к текущей файловой системе. | wc -l
будет считать строки команды находки.
Я думаю, что эта команда не доступна, потому что тип файловой системы отличается на Linux.
.
и ..
хотя), не файлы или inodes. -xdev
стандартное имя для -mount
.
– Stéphane Chazelas
12.02.2014, 14:34
df
не будет иметь никакой записи ни в каком каталоге, и у некоторых будет больше чем одна запись (жесткие ссылки). Это - вероятно, то же с Солярисомdf -t
. – Stéphane Chazelas 12.02.2014, 14:31stat -fc '%c-%d' /opt/aa | bc
(принятие GNUstat
). – Stéphane Chazelas 12.02.2014, 14:31IUsed
, который дает используемый inodes,IFRee
дает свободные. В любом случае это дает inodes (файлы + каталоги + устройства, по существу) в файловой системе, не в соответствии с каталогом, который, кажется, то, что хочет OP. – vonbrand 13.02.2014, 01:28