Как говорит Мё, использование псевдо-терминала может быть принудительно с помощью опции -t, и тогда появится логин с кем. Однако, хотя это домашняя система, если бы это не было так, меня бы немного беспокоило, что если бы кто-то вошел в систему без использования этого переключателя, я мог бы не знать о его присутствии в моей системе, не рассматривая далее опции sshd's reporting options!
-print
se asegurará de que el nombre de la ruta actual se imprima en la salida estándar. Algunas banderas desactivan la impresión predeterminada de nombres de ruta (-exec
, por ejemplo ).
-depth
provocará un primer recorrido profundo -de la jerarquía de archivos, de modo que los nombres de ruta en directorios sin subdirectorios se manejen primero (de abajo hacia arriba en lugar de arriba hacia abajo ). En su ejemplo, hace poca diferencia ya que está trabajando en un directorio sin subdirectorios, pero observe que .
se informa después de los otros nombres de ruta cuando usa-depth
(esto es porque .
es la parte superior -la mayoría de los directorios que se buscarán, por lo que su nombre de ruta se maneja en último lugar con -depth
y primero sin-depth
).
Es útil usar -depth
si uno está eliminando directorios con find
ya que obtendría errores al intentar acceder a directorios ya eliminados sin él.
Como Scott señala en los comentarios a continuación, definitivamente necesitaría -depth
cuando también cambiara el nombre de directorios, o posiblemente no podría atravesar la estructura de directorios al mismo tiempo. tiempo mientras cambia el nombre de los directorios en él.
La bandera -delete
activa -depth
de forma predeterminada.
Ejemplo :Elimine todos los directorios debajo del directorio actual cuyos nombres coincidan con *deleteme
(, por ejemplo folder-deleteme
), y también imprima las rutas a los directorios eliminados con éxito:
find. -depth -type d -name '*deleteme' -exec rm -rf {} ';' -print
Dada la siguiente estructura de directorios,
$ tree
.
`-- folder-deleteme
`-- another-deleteme
`-- evenmore-deleteme
3 directories, 0 file
ejecutar el comando anterior find
sin-depth
daría como resultado
$ find. -type d -name '*deleteme' -exec rm -rf {} ';' -print
./folder-deleteme
find:./folder-deleteme: No such file or directory
porque find
elimina el directorio superior -más folder-deleteme
(e imprime su ruta )y luego intenta ingresar para buscar más directorios para eliminar.
También:
$ find.
.
./folder-deleteme
./folder-deleteme/another-deleteme
./folder-deleteme/another-deleteme/evenmore-deleteme
$ find. -depth
./folder-deleteme/another-deleteme/evenmore-deleteme
./folder-deleteme/another-deleteme
./folder-deleteme
.