【发布时间】:2022-01-08 02:51:40
【问题描述】:
我有一些 .gz 文件,我想在其中运行脚本。我需要这些文件保持 .gz 格式。当我运行我的脚本时:
#!#bin#bash
for f1 in $(~/Desktop/hawkfiles17/NG*.fq.gz);
do
echo "${f1}"
done
我想检查文件的位置。脚本返回:
bash: /home/amyhouseman/Desktop/hawkfiles1/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz: Permission denied`
我尝试过使用:
chmod u+x /home/amyhouseman/Desktop/hawkfiles17/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz,但 bash 返回:
bash: /home/amyhouseman/Desktop/hawkfiles17/NG0921017_EKDN210018957-1A_HN2MGDSX2_L2_1.fq.gz: cannot execute binary file: Exec format error
如果有人可以提供帮助,我将不胜感激,我知道您无法执行 .gz 文件,但我不确定我还能做什么? 我之前确实看过其他帖子。
【问题讨论】:
-
您可能必须从 root 执行这些命令。尝试下一个命令:
su root或sudo su。 -
请正确格式化您的代码 sn-ps。整个 bash 脚本显示在一行中,但行尾很重要。
-
表达式
$(~/Desktop/hawkfiles17/NG*.fq.gz)没有意义。您尝试像运行可执行文件一样运行 gz 文件。从技术上讲,您会得到 permission denied,因为该文件上没有 x 位,但即使是这种情况,它也不起作用,您会得到类似 exec 格式的东西错误或类似的。
标签: bash shell permissions chmod