Добавьте пользователя в sudoers (фактически, новый файл в /etc/sudoers.d, но это та же предпосылка):
niceuser ALL=NOPASSWD:/usr/bin/nice
Затем в качестве "niceuser":
niceuser@localhost $ sudo nice -n -10 command...
и он сделает то, что мне нужно (то есть , теперь мой пользователь может увеличить приоритет команды {command ...}). Он поддерживает несколько пользователей и т. д. - используйте man 5 sudoers
для подробностей.
En resumen, no encontrará cp
funcionalidad nativa para la salida de la barra de progreso. ¿Por qué? Muchas razones . Sin embargo, tienes algunas opciones:
Use una herramienta diferente. rsync
, como lo menciona @user1404316 tiene--progress
:
rsync -P largeFile copyLocation
Si no necesita la semántica adicional de la que se encargan cp
y rsync
, cree un nuevo archivo conpv
("Pipe Viewer" )redirigiendostdout
:
pv < largeFile > copyLocation
Si necesita la semántica adicional, puede usar progress
, aunque no proporciona la barra específicamente. Se adjunta a que ya está ejecutando procesos , por lo que lo invocaría como:
# In one shell
$ cp largeFile copyLocation
# In another shell
$ progress -m
[ 4714] cp /home/hunteke/largeFile
1.1% (114 MiB / 10.2 GiB) # -m tells progress to continually update
Otra opción es gcp
, que hace exactamente lo que solicitaste con una barra de progreso:
gcp largeFile copyLocation
Otra opción abusa de la capacidad de curl
para manejar file://
URL:
curl -o copyLocation file:///path/to/largeFile
Puede escribir un script de shell
rsync
es un programa de copia que tiene excelentes funciones para copiar archivos grandes, incluida una función --progress
, y tiene una forma de compresión en tránsito -para reducir los datos en tránsito (y así ahorrar tiempo para el copiar):
rsync --progress file1 file2
rsync
también tiene funciones para reanudar una copia que se interrumpió, tal vez debido a una desconexión de la red. Debería iniciarlo con options --partial --append-verify
. El único inconveniente que se me ocurre de usar rsync
para copiar a través de una red es que debe haber sido instalado en ambas computadoras, es decir. el emisor y el receptor. Vea su página man
para detalles y todas sus otras características...
Si no puede instalar rsync
por alguna razón, o no quiere hacerlo, una buena alternativa simple es pv
, un comando visor de tuberías , que hace exactamente lo que está pidiendo por.
pv from-file > to-file
pv
también incluye muchas opciones de visualización. Consulte su página man
para conocer todas las ventajas disponibles. Estas son algunas de las opciones más utilizadas:
-p, --progress
-t, --timer
-e, --eta
-r, --rate
-a, --average-rate
-b, --bytes