Сохраните свой / домой на отдельном разделе. Таким образом, это не будет перезаписано, когда Вы переключитесь на другой дистрибутив или обновите свой текущий. Это - также хорошая идея иметь Вашу подкачку на ее собственном разделе. Но это должно быть сделано автоматически установщиком Вашего дистрибутива.
Путем мой ноутбук является установкой, у меня есть следующие разделы:
/
/home
/boot
swap
Тот размер как в размере файла или размере как в размерах изображения?
В zsh, для наблюдения всех .png
файлы в текущем каталоге и его подкаталогах, отсортированных путем увеличения размера файла:
echo **/*.png(oL)
Нет никакого удобного спецификатора шарика для захвата каждый файлы N. Вот цикл, который устанавливает массив $a
содержать каждый 50-й файл (запускающийся с самого большого).
a=() i=0
for x in **/*.png(OL); do
((i%50)) || a+=$x
((++i))
done
my-favorite-image-viewer $a
Без zsh или GNU находят, нет никакого простого способа отсортировать find
произведенный метаданными (существует find -ls
или find -exec ls
или find -exec stat
, но они не могли бы работать с файлами, содержащими непечатаемые символы, таким образом, мне не нравится рекомендовать им). Вот способ сделать это в Perl.
find . -name '*.png' |
perl -e '
$, = "\n"; # separate elements by newlines in the output
print # print…
sort {-s $a <=> -s $b} # …sorted by file size…
map {chomp;$_} <> #…the input lines (with the newline bitten off)
'
И вот способ просмотреть каждый 50-й файл (запускающийся с самого большого):
find . -name '*.png' |
perl -e '
$, = "\n";
exec "my-favorite-image-viewer",
map {$i++ % 50 ? () : $_} # every 50
sort {-s $b <=> -s $a} map {chomp;$_} <>
'
Другой подход должен был бы создать символьные ссылки в единственном каталоге с именами, заказанными размером файла. В zsh:
mkdir tmp && cd tmp
i=1000000 # the extra 1 on the left ensures alignment
for x in ../**/*(oL); do
((++i))
ln -s $x ${i#1}.png
done
С Perl:
mkdir tmp && cd tmp
find .. -name '*.png' |
perl -e '
$, = "\n";
for $x (sort {-s $a <=> -s $b} map {chomp;$_} <>) {
symlink $x, sprintf("%06d", ++$i);
}
'
Просто объединение find
искать *.png
, ls
или stat
получить размер файла, sort
к виду размером файла и awk
распечатать только каждую 50-ю строку.
Если у Вас нет инструментов GNU или если бы Ваши имена файлов содержат много специальных символов, я использовал бы одно из отличных решений Gilles.
Однако вот одно решение с помощью GNU find
, sort
, cut
и awk
- в основном набор инструментов, что предложенный alex:
$ find -iname "*.png" -exec ls -s {} + | sort -n | cut -d" " --complement -f1 | awk '{ if ( NR % 50 == 0 ) print}' | xargs -d"\n" eog
Здесь я использовал глаз гнома (eog
) как программа просмотра изображений, главным образом потому что это был один из некоторых, я мог найти, что берут несколько параметров командной строки, и делает что-то разумное с ним.
Я уверен, что мог удалить sort
и cut
в пользу еще некоторых awk
код. Чтобы быть абсолютно честным, я не уверен, как это решение будет взаимодействовать с пробелом.