Por que '-' foi escolhido como o sufixo do arquivo de backup para certos arquivos do sistema Unix?

1

Exemplo: /etc/group- , /etc/passwd-

Existe alguma motivação por trás da escolha do sinal - (por exemplo, mais fácil de reconhecer, processar, etc.)?

    
por syntagma 22.01.2015 / 06:59

1 resposta

7

Usar prefixos ou sufixos é comum, porque é facilmente filtrado.

Geralmente, é ~ para backup. A maioria dos editores de texto usa isso, e é possível dizer explicitamente a ls para não listá-los por padrão. Isso é semelhante ao uso de um ponto no início para tornar o arquivo um pouco oculto (isso também é respeitado por ls e pelo shell globbing). Outros exemplos são #filename# usados pelo emacs para armazenar unsaved modificações de um arquivo (para que você possa recuperar se você não salvou alguma coisa). Este é geralmente um arquivo temporário (não exatamente um backup) e é geralmente mostrado pelas ferramentas de listagem de arquivos.

O uso de - no caso de arquivos de gerenciamento de contas de usuários é algo pouco convencional (não me lembro de nenhuma outra ocorrência desse sufixo). Pode ser das versões pré-históricas do unix (alguém deve comentar se souber). No entanto, há uma diferença sutil aqui. O ~ significa principalmente que um usuário modificou um arquivo e um backup foi armazenado pelo editor de texto. O sufixo - é usado pelas ferramentas automáticas para gerenciamento de usuários. Não existe muito para inverter erros de sintaxe ou corrupções de arquivos, mas para reverter uma alteração correta (mas não desejada). Não é incomum ter os dois arquivos presentes se você editar os arquivos manualmente em algum momento. Por exemplo, às vezes tenho três arquivos extras:

passwd, passwd~, passwd-, passwd.pacnew

o último é um sufixo personalizado usado por pacman para armazenar um arquivo a ser cuidadosamente mesclado no arquivo existente manualmente.

    
por 22.01.2015 / 09:06
yii\base\ErrorException
Copied! Copy Stacktrace Search Stackoverflow Search Google Error

PHP Core Warning – yii\base\ErrorException

PHP Startup: Unable to load dynamic library 'memcached.so' (tried: /usr/lib/php/20190902/memcached.so (/usr/lib/php/20190902/memcached.so: undefined symbol: igbinary_serialize), /usr/lib/php/20190902/memcached.so.so (/usr/lib/php/20190902/memcached.so.so: cannot open shared object file: No such file or directory))

$_GET = [
    'id' => '838232',
    'url' => 'why-has-been-chosen-as-the-backup-file-suffix-for-certain-unix-system-files',
];

$_COOKIE = [
    '_csrf-frontend' => '5f658150973fab2dce64c31eefc78c3c3ec96ef1098b8dcfa54478953e38c304a:2:{i:0;s:14:"_csrf-frontend";i:1;s:32:"ZYyljl7Lzi2XFY7nASxjH3-JjFP26SsW";}',
    'advanced-frontend' => '7k3895pfov3mlelp90drfvgfdf',
];

$_SESSION = [
    '__flash' => [],
];