원격 컴퓨터의 작업공간 이름을 변경해야 합니다. xfconf-query에 대한 문서를 보고 다음을 사용하여 작업공간 이름을 성공적으로 나열했습니다.
xfconf-query -c xfwm4 -p /general/workspace_names
결과는 다음으로 시작됩니다.
Value is an array with 13 items:
또한 내 작업공간 이름 중 하나가 포함된 파일을 찾아 ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml을 찾았지만 파일을 편집하고 작업공간 이름 중 하나를 변경한 다음 작업공간 GUI를 열면 여전히 동일한 이전 값을 가지고 있습니다. 그러나 GUI에서 작업공간 이름을 변경한 다음 ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml을 열면 작업공간이 새 작업공간 이름으로 업데이트됩니다.
이것에 대해 많이 검색했지만 배열에서 변경하려는 항목과 변경하려는 항목을 지정하는 방법을 알려주는 항목을 찾을 수 없습니다. 이 작업을 수행하는 방법을 아는 사람이 있으면 예제를 게시할 수 있습니까?
xfconf-query -c xfwm4 -p /general/workspace_names -o(ld) old_name -n(ew) new_name
답변1
이 작업을 구체적으로 수행하는 명령줄 유틸리티를 찾을 수 없습니다. 모든 작업공간에서 사용하는 이름은 출력에 표시되는 배열이므로 xfconf-query
지정 해야 합니다 . /general/workspace_names
Bash 스크립트가 도움이 될 수 있습니다.
$ cat xfwm4-set-workspace-name
#!/bin/bash
# usage: xfwm4-set-workspace-name [number name]...
_OLD_IFS=$IFS IFS=$'\n'
ws_count=$(xfconf-query -c xfwm4 -p /general/workspace_count)
ws_names=($(xfconf-query -c xfwm4 -p /general/workspace_names | tail -n+3))
IFS=$_OLD_IFS
declare -i ws_number
while [ $# -gt 0 ]; do
ws_number=$1
shift
if [ $ws_number -lt 1 -o $ws_number -gt $ws_count ]; then
echo warning: invalid workspace number 2>/dev/null
shift
continue
fi
if [ $# -eq 0 ]; then
echo warning: no workspace name specified 2>/dev/null
break
fi
ws_name=$1
shift
ws_names[$((ws_number - 1))]=$ws_name
done
declare -a xfconf_sets
for i in ${!ws_names[@]}; do
xfconf_sets+=(-s "${ws_names[$i]}")
done
xfconf-query -c xfwm4 -p /general/workspace_names "${xfconf_sets[@]}"
$ ./xfwm4-set-workspace-name 2 'ws two' 3 'workspace three'