cat
no puede generar datos que no existen en los archivos. Si un archivo está vacío, ni siquiera tiene un carácter de nueva línea para proporcionar una línea vacía como salida.
Puede asegurarse de que los archivos contengan al menos un carácter de nueva línea.
Así es como usas GNU awk
para asegurarte de que (esto modifica los archivos vacíos):
awk 'ENDFILE { if (FNR == 0) printf("\n") >>FILENAME }' 2[0-8]_SumActive.txt
El bloqueENDFILE
se ejecutará después de terminar de leer cualquiera de los archivos. Si FNR
es cero, nunca vimos ninguna línea en el archivo, por lo que insertamos una nueva línea en él. La secuencia de comandos luego continúa con el siguiente archivo.
Luego puede usar cat
como lo hizo en la pregunta.
Alternativamente, sin cambiar los archivos, usando GNUawk
en lugar decat
:
awk 'ENDFILE { if (FNR == 0) printf("\n") } 1' 2[0-8]_SumActive.txt
Esto hace el mismo tipo de detección de archivos vacíos que el anterior, pero imprime la nueva línea en la salida estándar en lugar del archivo. El 1
al final podría ser reemplazado por { print }
y hará que todos los datos en los archivos que no estén vacíos -se envíen.
Alternativamente, un bucle de shell (debería funcionar en cualquier shell POSIX):
for name in./2[0-8]_SumActive.txt; do
if [ -s "$name" ]; then
cat "$name"
else
printf '\n'
fi
done
La prueba -s
será verdadera si el archivo existe y tiene un tamaño mayor que cero.
Si desea que se genere la cadena literal [Blank]
para archivos vacíos, simplemente inserte esa cadena delante de \n
en las llamadas a printf
arriba de (, esto también funcionará en el código awk
).
Это ошибка freerdp, единственное решение — либо перейти на более раннюю версию, либо установить freerdp 2.0, которая недоступна как есть. Вы можете установить его в арч, используя freerdp -git aur. Это решило проблему для меня
+1 При изменении размера подключенного сеанса RDP. Единственный обходной путь — убить Реммину и перезапустить ее.
(org.remmina.Remmina :3483 ):Gtk -CRITICAL **:12 :14 :28.216 :gtk _окно _изменение размера :утверждение 'ширина > 0' не удалось [12 :14 :40 :880] [3483 :3491] [ОШИБКА][com.freerdp.core] -ERRINFO _НЕИЗВЕСТНО 0x00000011 :Неизвестная ошибка. Не удалось проверить дескрипторы событий FreeRDP
.