debian
e seus derivados (e provavelmente a maioria das outras distribuições) vêm com os busybox
quais é usado no initramfs
.
busybox
agrupa a maioria dos utilitários de linha de comando principais em um único executável.
Você pode ligar temporariamente o link simbólico /bin/rm
para /bin/busybox
:
ln -s busybox /bin/rm
Para obter um trabalho rm
(após o qual você pode fazer o seu apt-get install --reinstall coreutils
).
Esse mesmo método pode ser usado para todos os outros utilitários busybox
incluídos. Essa lista varia de uma implantação para outra. Você pode obter a lista com busybox --list
.
Observe, no entanto, que são versões limitadas dos utilitários correspondentes. Às vezes, eles suportam extensões GNU, mas geralmente não, e alguns deles nem mesmo suportam todos os recursos padrão / POSIX (alguns recursos podem ser ativados / desativados em tempo de compilação).
Como alternativa, você pode usar zsh
o builtin rm:
#! /bin/zsh
zmodload zsh/files
rm "$@"
O zsh/files
módulo fornece com alguns comandos internos adicionais ( rm
, mv
, ln
, mkdir
, rmdir
, chown
, chmod
, sync
). É útil nesse tipo de situação ou quando você não pode dividir mais processos, mas possui uma zsh
execução interativa .
ksh93
também tem uma série de extras buitin / opcional comandos, mas não rm
entre eles ( basename
, chmod
, dirname
, getconf
, head
, mkdir
, logname
, cat
, cmp
, cut
, uname
, wc
, sync
). Você pode invocá-los com:
command /opt/ast/bin/the-command
em um ksh93
script.