Другим способом может быть доступ к автоматической переменной $BASH_COMMAND
, но она по своей природе изменчива и трудно получить требуемое значение.
Я думаю, что вы могли бы поймать это только через eval
, что также включает в себя вызов ваших командных строк -особым образом, как в:
CMD="${BASH_COMMAND##* eval }" eval './test.sh arg1 | grep "xyz"'
Здесь $BASH_COMMAND
расширяется, а также очищается до eval
бита строки, и результирующая строка, таким образом, "снимается" во вспомогательную переменную $CMD
.
Маленький пример:
$ cat test.sh
#!/bin/sh
printf 'you are running %s\n' "$CMD"
sleep 1
echo bye bye
$
$ CMD="${BASH_COMMAND##* eval }" eval './test.sh | { grep -nH "."; }'
(standard input):1:you are running './test.sh | { grep -nH "."; }'
(standard input):2:bye bye
$
Естественно, он также может работать (на самом деле лучше )при вызове скриптов, например. sh -c
или bash -c
, как в:
$
$ CMD="${BASH_COMMAND}" sh -c './test.sh | { grep -nH "."; }'
(standard input):1:you are running CMD="${BASH_COMMAND}" sh -c './test.sh | { grep -nH "."; }'
(standard input):2:bye bye
$
Здесь без очистки переменной.
Следуя инструкциям производителя , обновление репозитория у меня не сработало.
Сообщение об ошибке было следующим после «подходящего обновления»:
Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate. Could not handshake: Error in the certificate verification. [IP: 104.236.0.104 443]
Однако решение было очень простым. Я изменил https на http в файле /etc/apt/sources.list.d/sublime -text.list:
#deb https://download.sublimetext.com/ apt/stable/
deb http://download.sublimetext.com/ apt/stable/