아래와 같이 데비안 테스트에서 Gnome 3를 설치해 봅니다.이 설명. 그러나 이것은 작동하지 않으며 GUI가 없습니다.
현재 문제를 해결하려고 시도한 결과 수동 설치로 표시된 패키지 목록이 길다는 것을 깨달았습니다. 제 생각에는 자동 설치로 표시되어야 하는 패키지 목록(거의 모든 패키지)을 (개행으로 구분하여) 저장합니다.
apt-mark auto
이제 나는 이 목록 에 출마하고 싶습니다 .
어떻게 해야 하나요?
추신: 누군가가 나에게 이것이 좋은 생각이 아니라고 말한다면(그렇지 않다면) 나도 감사하겠습니다.
답변1
xargs를 사용할 수 있습니다.
cat /path/to/file | xargs apt-mark auto
이 방법은 텍스트 파일의 한 줄에 하나의 패키지 이름만 있는 경우에 작동합니다 /path/to/file
.
또 다른 옵션은 for 루프를 사용하는 것입니다.
for pkg in `cat /path/to/file`; do apt-mark auto $pkg; done
두 번째 접근 방식은 인수 목록을 사용하여 명령을 호출할 수 없지만 각 인수에 대해 한 번씩 호출해야 하는 유사한 문제가 있는 경우 유용할 수 있습니다. 그러나 귀하의 경우에는 확실히 그렇게 우아하지 않습니다... :)
그런데, 나는 당신이 bash를 사용하고 있다고 가정합니다.
노트:내 시스템에서는 apt-mark --help
다음과 같이 말합니다.
Usage: apt-mark [options] {markauto|unmarkauto} packages...
그리고:
apt-mark is deprecated, use apt-get markauto/unmarkauto.
답변2
apt-mark auto
한 번에 파일 목록을 파일로 덤프 하려는 것 같습니다 . 다음 의사코드를 사용하면 시작됩니다.
while read pkgname; do apt-mark auto $pkgname; done <list_of_packages
답변3
다음 스크립트를 실행하세요.python scriptname.py list-of-packages.txt
루트 사용자로:
import subprocess
import sys
filename = sys.argv[1]
with open(filename) as f:
packages = f.read()
packages = packages.split()
packages = " ".join(packages)
cmd = "apt-mark auto " + packages
subprocess.call(cmd, shell=True)
이것이 문제가 되지 않기를 바랍니다.GNOME이 있다는 것은 이미 Python이 설치되어 있다는 의미입니다..