Что это значит? Что такое "Выход 2"?
Это - статус выхода ls
. Посмотрите человека для ls:
Exit status:
0 if OK,
1 if minor problems (e.g., cannot access subdirectory),
2 if serious trouble (e.g., cannot access command-line argument).
Я предполагаю, что причина состоит в том, что у Вас есть много из *conf файлы в /etc
и не *conf файлы в/usr.Действительно? ls -ld /usr/*conf;
имел бы тот же эффект.
Таким образом, Если я делаю на своем компьютере ls
для существующего файла:
ls main.cpp; echo $?
main.cpp
0
И для файла, который не делает, существует:
ls main.cppp; echo $?
ls: cannot access main.cppp: No such file or directory
2
Или как фоновый процесс ls для существует файл, который не делает:
>ls main.cppp &
[1] 26880
ls: cannot access main.cppp: No such file or directory
[1]+ Exit 2 ls main.cppp
Git записывает свои ошибки в stderr, поэтому вы не пропустите их, если перенаправите обычный вывод (в файл или, в вашем случае, канал это в программу).
Вы можете попробовать:
zenity --class=CheckGit --info title="Check git updates" --text="\n \
<b>MY-GIT-REPO:</b> $(cd "/home/ME/.local/share/git/MY-GIT-REPO" && git pull 2>&1 | grep -E '(up-to-date|changed|error)')"