AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / 问题

All perguntas(unix)

Martin Hope
Lockszmith
Asked: 2022-06-27 21:13:24 +0800 CST

Livrando-se de "Os seguintes pacotes serão DOWNGRADED"

  • 19

Vou começar afirmando que tenho certeza de que essa é uma bagunça única do meu próprio design, mas espero que alguém tenha encontrado isso e possa ajudar.

A configuração

Meu laptop roda Pop!_OS 22.04 (Baseado no Ubuntu Jammy). Eu realmente gosto dos pacotes xscreensaver , mas os repositórios de lançamento Debian/Ubuntu/Pop!_OS contêm uma versão desatualizada, e apenas sid (também conhecido como Unstable) contém o pacote atualizado * .

Sem problemas, é por isso que a fixação existe, e é assim que eu configurei:

/etc/apt/preferences.d/unstable-200Arquivo:

Package: *
Pin: release a=unstable
Pin-Priority: 200

/etc/apt/preferences.d/xscreensaver-2000Arquivo:

Package: xscreensaver*
Pin: release a=unstable
Pin-Priority: 2000

/etc/apt/sources.list.d/debian.sid.listArquivo:

deb [arch=amd64] http://http.us.debian.org/debian sid main contrib non-free

Isso realmente funciona, neste momento, a execução sudo apt install xscreensaverinstala as versões atualizadas. No entanto, há um efeito colateral estranho.

O problema

Quando executo sudo apt updateseguido por sudo apt upgrade, recebo a seguinte saída:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages will be DOWNGRADED:
  alsa-topology-conf appmenu-gtk-module-common aspell-en ca-certificates
  chrome-gnome-shell dictionaries-common dns-root-data emacsen-common folks-common
  fonts-arphic-ukai fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji
  fonts-urw-base35 friendly-recovery gir1.2-flatpak-1.0 gir1.2-gdkpixbuf-2.0
  gir1.2-graphene-1.0 gir1.2-gtksource-4 gir1.2-polkit-1.0 gir1.2-secret-1
  gir1.2-soup-2.4 gsfonts gsfonts-x11 hunspell-ar hunspell-de-at-frami
  hunspell-de-ch-frami hunspell-de-de-frami hunspell-en-au hunspell-en-ca hunspell-en-gb
  hunspell-en-us hunspell-en-za hunspell-es hunspell-fr hunspell-fr-classical hunspell-it
  hunspell-pt-br hunspell-pt-pt hunspell-ru hyphen-de hyphen-en-gb hyphen-es hyphen-fr
  hyphen-it hyphen-pt-br hyphen-pt-pt ieee-data javascript-common klibc-utils
  laptop-detect liba52-0.7.4 libappmenu-gtk2-parser0 libbytesize-common libffi8
  libflatpak-dev libgl1 libgles2 libgutenprint-common libgweather-4-0 libio-stringy-perl
  libjs-jquery libldacbt-abr2 libmpcdec6 libmysofa1 libopengl0 libpolkit-gobject-1-0
  libsndio7.0 libsoup-gnome2.4-1 libtermkey1 libvterm0 libwacom-common libxkbcommon0
  mythes-ar mythes-de mythes-de-ch mythes-en-au mythes-en-us mythes-es mythes-fr
  mythes-it mythes-pt-pt mythes-ru neovim-runtime netbase pass policykit-1 poppler-data
  powermgmt-base printer-driver-all python3-certifi python3-fido2 python3-jinja2
  python3-launchpadlib python3-lazr.uri python3-macaroonbakery python3-more-itertools
  python3-pkg-resources python3-pyatspi python3-rfc3339 python3-setuptools python3-tz
  python3-wheel python3-ykman sensible-utils sgml-base sgml-data sound-icons ssl-cert
  tpm-udev ucf update-inetd va-driver-all wamerican wbrazilian wbritish wfrench witalian
  wngerman wogerman wspanish wswiss xfonts-base xml-core yubikey-manager
0 upgraded, 0 newly installed, 125 downgraded, 0 to remove and 0 not upgraded.
Need to get 257 MB/283 MB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] 

Isso também elimina a contagem de atualizações do Pop!_OS Shop, com esses pacotes sendo exibidos como atualizações pendentes do sistema operacional.

Solução de problemas

Alguns dados que coletei ao tentar solucionar isso.

Remover /etc/apt/sources.list.d/debian.sid.liste executar sudo apt updateresolve o problema, então eu sei que é apenas um erro de cálculo/lógica falha em algum lugar.

Focando no primeiro pacote da lista alsa-topology-conf:

Embora eu saiba que o erro é completamente superficial, a princípio pensei de aptalguma forma rastrear de onde (qual repositório) o pacote veio, então removi, limpei e reinstalei o pacote. Não fez diferença.

sudo apt remove alsa-topology-conf
sudo apt clean
sudo apt update
sudo apt install alsa-topology-conf

Executando apt policy alsa-topology-conf, os resultados são:

alsa-topology-conf:
  Installed: 1.2.5.1-2
  Candidate: 1.2.5.1-2
  Version table:
 *** 1.2.5.1-2 200
        200 http://http.us.debian.org/debian sid/main amd64 Packages
        100 /var/lib/dpkg/status
     1.2.5.1-2 501
        501 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages
        501 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages

Parece que ambos side jammytêm exatamente a mesma versão e, por algum motivo, aptcombinam o pacote com a 200prioridade, em vez da 501entrada de prioridade.

Com /etc/apt/sources.list.d/debian.sid.listremovido, a saída fica assim:

alsa-topology-conf:
  Installed: 1.2.5.1-2
  Candidate: 1.2.5.1-2
  Version table:
 *** 1.2.5.1-2 501
        501 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages
        501 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages
        100 /var/lib/dpkg/status

Perguntas relacionadas

A seguir estão perguntas relacionadas com situações semelhantes, mas nenhuma das respostas me ajudou a entender ou resolver isso.

  • apt fixando prioridade restrita
  • Debian 10: Por que alguns pacotes SSL serão rebaixados?
  • Como se livrar da mensagem apt "Pacotes foram rebaixados e -y foi usado sem --allow-downgrades"

Eu tentei todas as respostas nas perguntas acima, mas nenhuma parece ser relevante ou funcionar.

Minha pergunta

Alguém tem alguma sugestão de como conciliar isso para que o sistema não pense constantemente que esses pacotes precisam ser DOWNGRADED?

debian apt
  • 2 respostas
  • 1978 Views
Martin Hope
EmmaV
Asked: 2022-06-05 04:02:50 +0800 CST

'find -exec mv' perde 4 arquivos

  • 19

Eu queria mover cerca de 1000 arquivos mp3 de um diretório chamado 'music' contendo uma complicada estrutura de diretórios aninhada, para um único diretório chamado 'mp3s', para que eu pudesse ouvi-los no meu carro.

O comando que usei foi:

find music -name '*mp3' -exec mv -v -t mp3s {} +

Algo estranho aconteceu quando eu executei o comando no entanto. Após a conclusão do comando, notei que quatro arquivos foram omitidos. Esses arquivos foram:

"music/Michael Hedges/Michael Hedges - Taproot/06 - Chava's Song.mp3"
'music/Michael Hedges/Michael Hedges - Aerial Boundaries/04 - Ragamuffin.mp3'
'music/Jonas Hellborg/1988 - Bass/07. Blues For LW.flac.mp3'
'music/Jonas Hellborg/1988 - Axis/03. Roman.flac.mp3'

Executei exatamente o mesmo comando novamente e, desta vez, os quatro arquivos omitidos anteriormente foram movidos conforme o esperado.

Não consigo imaginar por que findpoderia fazer algo inesperado como isso. Por que isso pode ter acontecido?

Executado no shell bash no Ubuntu.

find mv
  • 1 respostas
  • 907 Views
Martin Hope
paperskilltrees
Asked: 2022-04-18 10:41:35 +0800 CST

Qual é o motivo de ter ou restringir as permissões do proprietário do arquivo?

  • 19

Conforme discutido em Noções básicas sobre permissões e tipos de arquivo do UNIX , cada arquivo tem configurações de permissão ("modo de arquivo") para:

  • o proprietário/usuário (" u"),
  • o grupo do proprietário (" g"), e
  • todos os outros (" o").

Pelo que entendi, o proprietário de um arquivo sempre pode alterar as permissões do arquivo usando chmod. Assim como qualquer aplicativo em execução sob o proprietário.

Qual é o motivo para restringir as permissões do próprio proprietário se ele sempre pode alterá-las?

O único uso que posso ver é a proteção contra exclusão ou execução acidental , que pode ser facilmente superada, se pretendido.


Uma pergunta relacionada foi feita aqui: Existe uma razão pela qual as permissões de 'proprietário' existem? As permissões de grupo não são suficientes? Ele discute por que as permissões do proprietário não podem ser substituídas por um grupo fictício que consiste em um único usuário (o proprietário). Em contraste, aqui estou perguntando sobre o propósito de ter permissões para o proprietário em princípio , não importa se elas são implementadas por meio de um " u" octal separado ou um grupo separado + ACLs.

permissions
  • 4 respostas
  • 3334 Views
Martin Hope
effbiae
Asked: 2022-02-26 22:55:53 +0800 CST

Copiei um diretório com `cp -as` e agora estou com medo de `rm -rf` o diretório criado, pois pode excluir o original

  • 19

Copiei um diretório com cp -as /media/user/dir symlinkse agora estou apavorado rm -rf symlinks, pois pode excluir arquivos em/media/user/dir

Qual é a maneira segura de excluir apenas a estrutura de diretórios e os links simbólicos symlinks sem tocar em nada /media/user/dir?

Como teste, fiz assim:

$ mkdir test
$ touch test/file
$ mkdir test/dir
$ touch test/dir/file2
$ cp -as test syms
$ rm -rf syms         

Este teste não tocou no testdiretório original. Este é um teste completo? É sempre assim?

Não tenho espaço para fazer um backup de/media/user/dir

symlink rm
  • 2 respostas
  • 2397 Views
Martin Hope
floatingpurr
Asked: 2020-02-06 05:07:17 +0800 CST

o prompt do oh-my-zsh é lento: como corrigir isso

  • 19

Estou usando o macOS 10.15.2 com iTerm2, zsh 5.7.1 e oh-my-zsh (tema robbyrussell).

Percebi que a impressão do prompt é um pouco lenta em relação ao bash. Por exemplo, se eu pressionar enter, o cursor inicialmente vai para o início da próxima linha e, depois de um tempo, o prompt do shell entra e o cursor é movido para sua posição natural. Por exemplo, se → ~é o prompt quando estou na minha pasta pessoal e []é meu cursor, quando pressiono enter, vejo:

0 - Estado ocioso

→ ~ []

1 - Imediatamente após pressionarenter

[]

2 - De volta ao estado inativo

→ ~ []

Essa lentidão é particularmente evidente quando pressiono enter várias vezes rapidamente. Neste caso, vejo algumas linhas em branco. Isso é o que eu vejo

→ ~
→ ~
→ ~

→ ~

→ ~


→ ~
→ ~
→ ~

→ ~ []

Eu venho do bash shell e quando uso o bash, não há tanta lentidão. Não tenho certeza se isso é um problema de oh-my-zsh ou seu comportamento natural. Eu gostaria de saber mais sobre isso e, eventualmente, como corrigi-lo. Obrigado.

PS : o problema vem de oh-my-zsh e persiste mesmo se eu desabilitar todos os plugins.

PPS : Eu postei anteriormente esta pergunta no SO. Obrigado a user1934428 por sua ajuda e por sugerir que eu mova esta questão aqui.

zsh terminal
  • 5 respostas
  • 20115 Views
Martin Hope
Hongxu Chen
Asked: 2019-10-17 19:55:23 +0800 CST

"traversal failed: u: Bad message" ao excluir um diretório extremamente grande no Linux

  • 19

Estou tentando remover alguns diretórios extremamente grandes, porém sem sucesso. Seguem algumas observações:

# cwd contains the two larger directories
$ ls -lhF
drwxrwxr-x 2 hongxu hongxu 471M Oct 16 18:52 J/
drwxr-xr-x 2 hongxu hongxu 5.8M Oct 16 17:21 u/
# Note that this is the output of `ls` of the directory themselves so they should be *huge*
# J/ seems much larger than u/ (containing more files), so take u/ as an example

$ rm -rf u/
# hang for a very long time, and finally report
rm: traversal failed: u: Bad message

$ cd u/
# can cd into u/ without problems

$ ls -lhF
# hang for a long time; cancel succeeds when I press Ctrl-C

$ rm *
# hang for a long time; cancel fails when I press Ctrl-C
# however there are no process associated with `rm` as reported by `ps aux`

Esses dois diretórios contêm principalmente muitos arquivos pequenos (cada um não excedendo 10k, suponho). Agora que tenho que remover esses dois diretórios para liberar mais espaço em disco. O que devo fazer?

UPDATE1:
Por favor, veja a saída de rm -rf u/que informa isso rm: traversal failed: u: Bad messagedepois de muito tempo (> 2 horas). Portanto, o problema não parece ser a eficiência.

UPDATE2:
Ao aplicar fsck, ele relata o seguinte (parece bom):

$ sudo fsck -A -y /dev/sda2
fsck from util-linux 2.31.1
fsck.fat 4.1 (2017-01-24)
/dev/sda1: 13 files, 1884/130812 clusters

$ df /dev/sda2
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda2      244568380 189896000  43628648  82% /

UPDATE3:
Caso seja relevante (mas provavelmente não), esses dois diretórios ( J/e u/) contêm terminfogerado por ticcomando; diferente dos arquivos terminfo compilados regulares (por exemplo, aqueles dentro /lib/terminfode ), eles foram gerados com algumas técnicas de fuzzing, portanto, podem não ser arquivos terminfo "legais". irrelevante!

UPDATE4:
Mais algumas observações:

$ find u/ -type f | while read f; do echo $f; rm -f $f; done
# hang for a long time, IUsed (`df -i /dev/sda2`) not decreased
$ mkdir emptyfolder && rsync -r --delete emptyfolder/ u/
# hang for a long time, IUsed (`df -i /dev/sda2`) not decreased
$ strace rm -rf u/
execve("/bin/rm", ["rm", "-rf", "u"], 0x7fffffffc550 /* 121 vars */) = 0                                                                                                                       
brk(NULL)                               = 0x555555764000                                                                                                                                       
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)                                                                                                                
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)                                                                                                                
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3                                                                                                                                   
fstat(3, {st_mode=S_IFREG|0644, st_size=125128, ...}) = 0                                                                                                                                      
mmap(NULL, 125128, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffff7fd8000                                                                                                                              
close(3)                                = 0                                                                                                                                                    
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)                                                                                                                
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3                                                                                                                    
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\34\2\0\0\0\0\0"..., 832) = 832                                                                                                     
fstat(3, {st_mode=S_IFREG|0755, st_size=2030544, ...}) = 0                                                                                                                                     
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffff7fd6000                                                                                                      
mmap(NULL, 4131552, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffff79e4000                                                                                                     
mprotect(0x7ffff7bcb000, 2097152, PROT_NONE) = 0                                                                                                                                               
mmap(0x7ffff7dcb000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e7000) = 0x7ffff7dcb000                                                                           
mmap(0x7ffff7dd1000, 15072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffff7dd1000                                                                                 
close(3)                                = 0                                                                                                                                                    
arch_prctl(ARCH_SET_FS, 0x7ffff7fd7540) = 0                                                                                                                                                    
mprotect(0x7ffff7dcb000, 16384, PROT_READ) = 0                                                                                                                                                 
mprotect(0x555555762000, 4096, PROT_READ) = 0                                                                                                                                                  
mprotect(0x7ffff7ffc000, 4096, PROT_READ) = 0                                                                                                                                                  
munmap(0x7ffff7fd8000, 125128)          = 0                                                                                                                                                    
brk(NULL)                               = 0x555555764000                                                                                                                                       
brk(0x555555785000)                     = 0x555555785000                                                                                                                                       
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3                                                                                                                     
fstat(3, {st_mode=S_IFREG|0644, st_size=1683056, ...}) = 0                                                                                                                                     
mmap(NULL, 1683056, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffff7e3b000                                                                                                                             
close(3)                                = 0                                                                                                                                                    
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0                                                                                                                                      
lstat("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0                                                                                                                                      
newfstatat(AT_FDCWD, "u", {st_mode=S_IFDIR|0755, st_size=6045696, ...}, AT_SYMLINK_NOFOLLOW) = 0                                                                                               
openat(AT_FDCWD, "u", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_NOFOLLOW|O_DIRECTORY) = 3                                                                                                                 
fstat(3, {st_mode=S_IFDIR|0755, st_size=6045696, ...}) = 0                                                                                                                                     
fcntl(3, F_GETFL)                       = 0x38800 (flags O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_NOFOLLOW|O_DIRECTORY)                                                                               
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0                                                                                                                                                    
getdents(3, /* 2 entries */, 32768)     = 48                                                                                                                                                   
getdents(3, /* 1 entries */, 32768)     = 24                                                                                                                                                   
... (repeated lines)                                                                                                                                                                           
getdents(3, /* 1 entries */, 32768)     = 24                                                                                                                                                   
getdents(3strace: Process 5307 detached                                                                                                                                                        
 <detached ...>
# (manually killed)
$ ls -f1 u/
./ 
../
../
../
../
... (repeated lines)
../
$ sudo journalctl -ex
Oct 17 16:00:16 CSLRF03AU kernel: JBD2: Spotted dirty metadata buffer (dev = sda2, blocknr = 0). There's a risk of filesystem corruption in case of system crash.
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error: 6971 callbacks suppressed
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm find: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm zsh: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm rm: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm find: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm rsync: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm zsh: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm zsh: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm rm: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm find: Directory index failed checksum
Oct 17 16:00:20 CSLRF03AU kernel: EXT4-fs error (device sda2): ext4_htree_next_block:948: inode #9789534: block 1020: comm find: Directory index failed checksum
# #9789534 is the inode of `u/` as reported by `ls -i`

Então deve ser uma corrupção do sistema de arquivos. Mas a reinicialização não funciona :(

linux
  • 3 respostas
  • 6970 Views
Martin Hope
einpoklum
Asked: 2019-07-29 05:19:36 +0800 CST

Obtendo dbind-WARNING sobre o registro no barramento de acessibilidade

  • 19

Quando executo aplicativos X a partir da linha de comando (por exemplo, leafpad; a maioria dos aplicativos), recebo o seguinte aviso no console:

 ... dbind-WARNING **: ... Couldn't register with accessibility bus: Did
not receive a reply. Possible causes include: the remote application did 
not send a reply, the message bus security policy blocked the reply, the 
reply timeout expired, or the network connection was broken.

(linha quebrada para ajustar a largura da coluna.)

Por que estou recebendo esta mensagem e o que posso fazer a respeito? Os aplicativos que o emitem parecem estar funcionando bem.

Isso aparece no Ubuntu 18.04 e no Devuan 3.0 Beowulf (~= Debian Buster)

accessibility d-bus
  • 1 respostas
  • 10660 Views
Martin Hope
Basil Bourque
Asked: 2019-07-28 22:13:24 +0800 CST

Como aplico as alterações ao arquivo .zshrc após editá-lo?

  • 19

Acabei de editar o arquivo .zshrc para configurar o Z shell no FreeBSD, por exemplo para atualizar a variável de sistema PATH .

path+=/usr/local/openjdk12/bin

Como faço para que as alterações entrem em vigor?

Devo sair e entrar novamente? Existe uma maneira de executar imediatamente esse arquivo?

zsh dot-files
  • 3 respostas
  • 44614 Views
Martin Hope
Stupid
Asked: 2019-06-07 06:21:49 +0800 CST

Como grep caracteres com seu valor unicode?

  • 19

Eu tenho o caractere Unicode ᚠ, representado por seu ponto de código Unicode 16A0, em um arquivo de texto (o arquivo de texto é codificado(?) como utf-8).

Quando faço grep '\u16A0' test.txtnão obtenho resultado. Como faço para grep esse personagem?

grep regular-expression
  • 2 respostas
  • 10017 Views
Martin Hope
z.h.
Asked: 2019-05-06 00:55:54 +0800 CST

O que faz com que o Make exclua arquivos intermediários?

  • 19

Eu escrevi um Makefile e descobri que ao executar o makecomando, um inesperado rmfoi executado, depois que todos os comandos no Mmakefile foram feitos. Mas eu não escrevi o rmcomando no Makefile.

run-%: d/%.out
    $<

d/%.out: d/%.c
    gcc -o $(subst .c,.out,$<) $<

Saída de execução make run-a:

gcc -o d/a.out d/a.c
d/a.out
rm d/a.out

Observe o trailing rm d/a.out, que eu não escrevi.

Em que circunstância o rmcomando automático será adicionado?

make
  • 1 respostas
  • 4204 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve