Lo escribí por error, pero bash no imprimió ningún error (pero creó un archivo vacío), así que pensé que tal vez realmente significa algo. (por ejemplo, fecha |> tmp.txt)
bash
io-redirection
Bdimych2 Bdimych2
fuente
fuente
date |> tmp.txt cmd2
? Porque eso cambia la respuesta.Respuestas:
Eso parece ser solo una tubería donde la segunda parte es un comando vacío, que solo contiene la redirección. Escribirlo como
date | >file
podría facilitar su interpretación. El comando vacío no hace nada más que procesar la redirección, creando el archivo.date >| file
por otro lado, actuaría como una anulación para lanoclobber
opción de shell, lo que evita que el>
archivo normal sobrescriba los archivos existentes.fuente
Sí, no arrojará error porque para bash
> file
significa redirigir a un archivo llamadofile
. Como en su caso no hay nada que redirigir al archivo, bash solo creará un nombre de archivofile
sin nada.fuente
my_file
contiene la salida dedate
.zsh
, cuando solo hay redirecciones y ningún comando,zsh
ejecuta el$NULLCMD
comando (cat
por defecto) o$READNULLCMD
(un buscapersonas por defecto) si solo hay redirecciones de entrada .