Я использую только комбинацию du и sort.
sudo du -sx /* 2>/dev/null | sort -n
0 /cdrom
0 /initrd.img
0 /lib64
0 /proc
0 /sys
0 /vmlinuz
4 /lost+found
4 /mnt
4 /nonexistent
4 /selinux
8 /export
36 /media
56 /scratchbox
200 /srv
804 /dev
4884 /root
8052 /bin
8600 /tmp
9136 /sbin
11888 /lib32
23100 /etc
66480 /boot
501072 /web
514516 /lib
984492 /opt
3503984 /var
7956192 /usr
74235656 /home
Тогда это случай полоскания и повторения.
Примечание. Я использую флаг du -x, чтобы держать вещи в одной файловой системе (У меня довольно сложное расположение кросс-монтируемых вещей между SSD и RAID5).
Примечание 2: 2>/dev/null перенаправляет любые сообщения об ошибках в забвение. Если они вас не беспокоят, это не обязательно.
Цитировать каждая переменная, так:
zenity --list --title="Choose script" --column="Script" --column="Description" "a.sh" "chaise longue" "b.sh" "moineau"
Я использую этот код для проекта в моей школе, который вы можете использовать
#!/bin/bash
arg="-u user -pPass -D Database -s -e"
function lista(){
gerentes=$(mysql $arg "SELECT * FROM empleado;")
OIFS=$IFS;
IFS=$'\n';
array=($gerentes)
for ((i=0; i<${#array[@]}; ++i));
do
IFS=$'\t'
cont=(${array[$i]})
for ((j=0; j<${#cont[@]}; ++j));
do
echo -n -e "${cont[$j]}" | tr -d '[[:space:]]'
echo -n -e "\t"
done
IFS=$OIFS;
done
IFS=$OIFS;
}
Сначала я определяю функцию 'lista' и вызываю ее в коде zenity
OP=$(zenity --list \
--title="Seleccione Gerente" \
--column="id" --column="Fecha" --column="Nombres" --column="cedula" --column="user" --column="cargo" --column="direccion" \
$(lista))
echo "Selecciono: $OP"