Escape a máscara da pergunta com uma barra invertida:
$ cp tes\?t /mnt/share/
Estou tentando copiar arquivos de um compartilhamento AFP para um compartilhamento SMB.
Vários arquivos no compartilhamento AFP têm ?
no nome. Se eu tentar copiá-los, recebo um argumento inválido '.
Eu não sei como os arquivos receberam ?
no nome.
Aqui está um exemplo:
user$ cp tes?t /mnt/share/
cp: tes?t: invalid argument
Eu tentei renomear o arquivo, mas recebo uma mensagem de erro 'ocupada por recursos'.
O que posso fazer para copiar os arquivos?
Escape a máscara da pergunta com uma barra invertida:
$ cp tes\?t /mnt/share/
Está removendo a opção ?
an? Esse é um caractere inválido para um arquivo ou nome de caminho em sistemas de arquivos compatíveis com NTFS, já que na verdade é um curinga de um caractere.
O erro resource busy
é provavelmente um resultado do ?
ser interpretado como um caractere curinga, e o sistema de arquivos tentando acessar todos os nomes de arquivos possíveis e inválidos que ele acredita que possam representar.
Tenho certeza de que você terá que acessar os arquivos de um sistema de arquivos que não considera ?
um caractere inválido (é um caractere válido em Macs?) para substituir o ?
por um válido. .
Os símbolos ?
representam caracteres não reconhecidos.
O mais provável é que o problema aqui é que o AFP usa nomes de arquivos UTF-8, mas você não está logado no sistema que montou o compartilhamento AFP usando uma localidade UTF-8. Se for uma caixa do Linux, você pode verificar sua localidade usando o comando locale
.
Se você descobrir que não está usando uma localidade UTF-8, poderá alterar temporariamente a localidade com algo como:
export LC_ALL="en_US.UTF-8"