명령줄을 통해 데스크탑을 지우는 방법은 무엇입니까?

명령줄을 통해 데스크탑을 지우는 방법은 무엇입니까?

전체 바탕 화면 + 아이콘을 숨긴 다음 단일 응용 프로그램을 시작하는 방법을 찾고 있습니다. 의미가 있다면 이는 생산성을 높이기 위한 것입니다. 명령줄에서 프로그래밍 방식으로 데스크탑을 공백으로 만들려면 어떻게 해야 합니까(즉, 아이콘을 제거하고 검은색으로 만들 수 있습니까?) 나중에 복원할 수도 있었으면 좋겠습니다.

Ubuntu, GNOME 등 여러 솔루션이 작동하지만 모든 데스크탑에 대해 이를 수행할 수 있는 방법이 있다면 이상적입니다.

답변1

아이콘을 제거하는 것은 쉬운 부분입니다. ~/Desktop의 모든 파일을 임시 위치로 이동하기만 하면 됩니다.

mkdir ~/backup_icons
mv ~/Desktop/* ~/backup_icons
mv ~/backup_icons/* ~/Desktop # restore

배경 변경은 DE에 따라 다릅니다. 나는 이것을 찾았다우분투 SE대답은 gsettingsGnome과 Unity에서 이 명령을 사용할 수 있음을 나타냅니다.

gsettings set org.gnome.desktop.background picture-uri file:///home/serrano/Pictures/blank_image.jpg

답변2

bash나는 Gnome 2와 함께 Ubuntu 11.04를 사용하고 있으며 해당 gconf 키를 임시로 설정하여 아이콘을 숨기고 바탕 화면 배경을 변경하는 스크립트를 작성했습니다 gconftool-2. 그런 다음 스크립트는 터미널에서 무한 루프를 사용하여 차단합니다 read. C를 누르면 원래 설정이 복원됩니다.

여기에 스크립트를 업로드했습니다.bckg-desk-tmpchange.sh;핵심은 다음과 같습니다.

replace_image="/usr/share/backgrounds/space-02.jpg"

# Ubuntu 11.04, Gnome 2 - get initial settings:
orig_pic_fn=$(gconftool-2 --get  "/desktop/gnome/background/picture_filename")
orig_show_desk=$(gconftool-2 --get  "/apps/nautilus/preferences/show_desktop")
orig_draw_bckg=$(gconftool-2 --get  "/desktop/gnome/background/draw_background")

restore_originals() {
  echo
  echo "  Restoring original show_desktop: ${orig_show_desk} and original picture_filename: ${orig_pic_fn}"
  gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string ${orig_pic_fn}
  sleep 1
  gconftool-2 --set "/apps/nautilus/preferences/show_desktop" --type bool ${orig_show_desk}
  gconftool-2 --set "/desktop/gnome/background/draw_background" --type bool ${orig_draw_bckg}
}
trap "restore_originals; echo; exit 0" INT

# -------------

echo "Original show_desktop (icons): ${orig_show_desk}"
echo "Original (desktop) picture_filename: ${orig_pic_fn}"

echo
echo "Setting temporary desktop settings: no icons, custom image ${replace_image}"
echo

gconftool-2 --set "/desktop/gnome/background/picture_filename" --type string ${replace_image}
sleep 1
gconftool-2 --set "/apps/nautilus/preferences/show_desktop" --type bool false

while [ 1 ]; do
  read -p "Blocking with read, and waiting for a Ctrl-C interrupt... " dontcare
done

답변3

데스크톱은 X무엇이든 표시할 수 있는 또 다른 애플리케이션일 뿐입니다. 이것은 역사와 전통의 문제입니다. 지난 5년 동안 위젯이 매우 보편화되었지만 대부분의 사람들은 거기에 아이콘만 있기를 원합니다. 주류 데스크톱 환경과 달리 보다 가벼운 독립 실행형 창 관리자는 데스크톱 응용 프로그램 자체를 실행하지 않고 루트 창(다른 모든 창을 포함하는 창)의 색상/이미지를 설정하는 경우가 가장 많습니다. 이상적으로는 데스크톱을 관리하는 모든 응용 프로그램을 중지하고 싶을 것입니다. 그러면 빈 루트 창만 남게 되며 모든 아이콘 설정이 엉망이 되지 않습니다(바로가기를 다른 곳으로 옮기면 가능합니다). .

데스크탑 애플리케이션은 plasma(KDE), nautilus(gnome) 등이 될 수 있습니다. 각 특정 상황에 대해 데스크톱이 종료되거나 충돌할 때 DE가 자동 다시 시작을 비활성화할 수 있는지 여부에 따라 달라집니다. 방해하지 않으면 프로세스를 종료할 수도 있습니다. 또한 dbus를 통해 DE에 무엇을 해야 할지(매우 구체적으로) 알려줄 수도 있습니다.

두 개의 데스크탑 관리자를 설치할 수 있으며 경우에 따라 하나를 시작하면 다른 하나가 대체됩니다.

나는 이것이 완전한 대답이 아니라 단지 대략적인 계획이라는 것을 알고 있습니다(설명하기에는 너무 깁니다). 각각의 특정 상황에서 어떻게 진행해야 하는지 자유롭게 의견을 남겨주세요.

관련 정보