debian
e i suoi derivati (e probabilmente la maggior parte delle altre distribuzioni) vengono con i busybox
quali viene utilizzato nel initramfs
.
busybox
raggruppa la maggior parte delle utility della riga di comando in un unico eseguibile.
Puoi temporaneamente collegare simbolicamente /bin/rm
a /bin/busybox
:
ln -s busybox /bin/rm
Per ottenere un lavoro rm
(dopo di che puoi fare il tuo apt-get install --reinstall coreutils
).
Lo stesso metodo può essere utilizzato per tutte le altre utilità che busybox
include. Tale elenco varia da una distribuzione all'altra. È possibile ottenere l'elenco con busybox --list
.
Si noti tuttavia che sono versioni limitate delle utilità corrispondenti. A volte supportano le estensioni GNU, ma generalmente no e alcune non supportano nemmeno tutte le funzionalità standard / POSIX (alcune funzionalità possono essere abilitate / disabilitate in fase di compilazione).
In alternativa, puoi usare l zsh
'builtin rm:
#! /bin/zsh
zmodload zsh/files
rm "$@"
Il zsh/files
modulo fornisce con alcuni comandi incorporati aggiuntivi ( rm
, mv
, ln
, mkdir
, rmdir
, chown
, chmod
, sync
). È utile in questo tipo di situazione o quando non è possibile eseguire il fork di più processi ma si ha una zsh
corsa interattiva .
ksh93
ha anche un certo numero di extra / optional comandi buitin, ma non rm
tra di loro ( basename
, chmod
, dirname
, getconf
, head
, mkdir
, logname
, cat
, cmp
, cut
, uname
, wc
, sync
). Puoi invocarli con:
command /opt/ast/bin/the-command
in una ksh93
sceneggiatura.