the fc
команда делает то, что вы хотите
fc -l <номер>
отобразит историю команд вокруг этого номера
fc <номер>
откроет эту запись командной строки в vim
(или независимо от того, какой у вас редактор по умолчанию, я полагаю), поэтому вы можете редактировать его, и после : wq
он будет доступен вам со стрелкой вверх.
Recomiendo encarecidamente no analizar df
la salida.
Si tiene stat
de GNU coreutils, puede obtener la cantidad de bloques libres disponibles para no -root por
stat -f /mountpoint -c '%a'
el tamaño del bloque por
stat -f /mountpoint -c '%S'
y la condición se puede escribir sucintamente como:
[ `stat -f /mountpoint -c '%a'` -lt 262144 ] && do_your_stuff
(asumiendo que el tamaño del bloque es 4096 y 1 GB es 1073741824 bytes -es decir, 1073741824/4096)
Y en cuanto a la eliminación de archivos (, según la pregunta ), probablemente la forma más segura sería:
find /directory -type f -print0 | xargs -0 -r rm -f
o incluso mejor:
find /directory -type f -delete
Usar rm -f /something/*
es solo buscar problemas.
prueba el siguiente código.
#!/bin/bash
var=$(df -h | sed -n 2p |awk '{ print $4 }')
if [ "${var}" le "15" ]
then
./bin/dss stop
rm -rf tmp/*
rm -rf caches/*
./bin/dss start
fi
Gracias por sus aportes.
Esta solución funcionó para mí.
var=$ (df -h | sed -n 2p | awk '{imprimir $4}')
variable = $ (echo "${var ::-1}")
si [ $vari < 15 ];
luego
./bin/dss parada
rm -rf tmp/*
rm -cachés rf/*
./bin/dss inicio;
hasta