![오류: /bin/sh: 21행: 해당 파일이나 디렉터리가 없습니다.](https://linux55.com/image/212213/%EC%98%A4%EB%A5%98%3A%20%2Fbin%2Fsh%3A%2021%ED%96%89%3A%20%ED%95%B4%EB%8B%B9%20%ED%8C%8C%EC%9D%BC%EC%9D%B4%EB%82%98%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EA%B0%80%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
다음 bash 쉘 스크립트에 명령을 실행할 때 sudo bash ~/ol_code_hosting/fedora.sh ~/ol_code_hosting/all_packages.txt
(docker 터미널에서 이 스크립트를 통해 bash 명령을 실행했습니다):
#!/bin/bash
sudo service docker restart
docker rm -f container_fedora
docker image rm -f fedora:latest
sudo docker pull fedora
sudo docker run -itd --name container_fedora fedora:latest
sudo docker exec container_fedora /bin/sh -c '
#dnf install dnf
#dnf clean all
#dnf check-update
#dnf upgrade
echo "outside1"
tmpfile=$(mktemp)
echo "outside2"
while IFS= read -r package; do
echo "inside loop"
if dnf info "$package" >"$tmpfile"
then
echo "Processing $package"
cat "$tmpfile" >>fedora_log.txt
else
printf "No package info for $package"
printf "%s\n" "$package" >>packages_not_in_fedora.txt
fi
done <"$1"
rm -f "$tmpfile"
exit'
sudo docker cp container_fedora:/fedora_log.txt ./fedora_log.txt
수신된 출력:
container_fedora
Untagged: fedora:latest
Untagged: fedora@sha256:2c5b21348e9b2a0b4c49bd5013be6d406be8594831aba21043393fcfba7252e0
Deleted: sha256:98ffdbffd20736862c8955419ef7db69849d715131717697007c3e51f22915a5
Deleted: sha256:811f92a7a340873e7fef337f3f3cab4f353f24ca0b303ed0f46b00917e262a7b
Using default tag: latest
latest: Pulling from library/fedora
e1deda52ffad: Pull complete
Digest: sha256:2c5b21348e9b2a0b4c49bd5013be6d406be8594831aba21043393fcfba7252e0
Status: Downloaded newer image for fedora:latest
docker.io/library/fedora:latest
9909e072f6fe41b2a8909b414f199ddeadaaa8a5daac70e3d0f765726e288302
outside1
/bin/sh: line 21: : No such file or directory
outside2
Error: No such container:path: container_fedora:/fedora_log.txt
매번 이런 오류 메시지가 나올 줄은 몰랐습니다. 누구든지 도울 수 있습니까? 매우 감사합니다!