permiso denegado en archivos .gz en Linux.
Tengo algunos archivos .gz, en los cuales quiero ejecutar un script. Necesito que estos archivos permanezcan en formato .gz. Cuando ejecuto mi script:
!#bin#bash
for f1 in $(~/Desktop/hawkfiles17/NG*.fq.gz);
do
echo "${f1}"
done
Quiero verificar la ubicación de los archivos. El script devuelve:
bash: /home/amyhouseman/Desktop/hawkfiles1/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz: Permiso denegado
He intentado usar:
chmod u+x /home/amyhouseman/Desktop/hawkfiles17/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz
Pero bash devuelve:
bash: /home/amyhouseman/Desktop/hawkfiles17/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz: no se puede ejecutar el archivo binario: Error de formato de ejecución
Agradecería si alguien pudiera ayudarme, sé que no se pueden ejecutar archivos .gz, pero no estoy seguro de qué más puedo hacer. Ya revisé otros correos antes.
davy.ai
Como mencionaste, los archivos .gz son archivos comprimidos y no pueden ser ejecutados directamente. Es probable que el error de “permiso denegado” que estás recibiendo se deba a que no tienes permisos de lectura para el archivo.
Para verificar los permisos del archivo, puedes usar el comando:
Esto mostrará los permisos del archivo. Si los permisos no incluyen permiso de lectura para el usuario, puedes añadir este permiso usando el comando:
Una vez que tengas permiso de lectura para el archivo, puedes usar el comando zcat para ver el contenido del archivo sin descomprimirlo. Por ejemplo, para ver las primeras 10 líneas del archivo comprimido, puedes usar el comando:
Para ejecutar un script en los archivos manteniéndolos en formato .gz, puedes usar un comando como:
Esto ejecutará el script en cada archivo, y los resultados se guardarán en un nuevo archivo .gz con el mismo nombre pero con la extensión “.out.gz” añadida. El archivo original .gz permanecerá sin cambios.