Нет, не существует способа POSIX, кроме компиляции программы на C, которая это делает. Как быстрый и грязный:
$ echo 'int main(int c,char*v[]){
execvp(v[1],&v[2]);perror(v[1]);return 127;}'>r.c && make r
$ ./r ps zzz -f
UID PID PPID C STIME TTY TIME CMD
chazelas 7412 7411 0 10:44 pts/4 00:00:00 /bin/zsh
chazelas 21187 7412 0 22:33 pts/4 00:00:00 zzz -f
exec -a
поддерживается ksh93
, bash
, zsh
, busybox ash
] (начиная с версии 1.27.0), yash
, mksh
( начиная с версии r50e ), Schily Bourne Shell (с августа 2015 г. ) поэтому является наиболее распространенным среди снарядов.
Вероятно, наиболее переносимым было бы прибегнуть к perl
, который с большей вероятностью будет доступен, чем компилятор C.
$ perl -e 'exec {shift} @ARGV' ps zzz -f
UID PID PPID C STIME TTY TIME CMD
chazelas 7554 7411 0 10:58 pts/12 00:00:00 /bin/zsh
chazelas 7630 7554 0 11:02 pts/12 00:00:00 zzz -f
APK Tools не поддерживает принудительное удаление пакетов , так как это нарушит граф, используемый для представления пакетов.
Чтобы ответить, как удалить прошивку :, вы можете установить linux-firmware-none
, который предоставляет linux-firmware-any
и удовлетворяет зависимости пакета ядра. В этот момент вы сможете удалить linux-firmware
.