Coloca a saída do subcomando entre os apóstrofos

2

Eu quero passar um arquivo para o comando mv. No entanto, estou tentando passar o primeiro arquivo do comando ls . O nome do arquivo se parece com my music.mp3 , então tenho que colocar a saída do subcomando entre os apóstrofos para torná-lo corretamente reconhecido pelo comando mv. Estou tentando fazer algo assim (abaixo), mas não funciona. Eu sei que isso pode ser feito usando echo , mas acredito que há uma maneira melhor.

mv ''ls | head -1'' 'Music/my playlist/'
    
por Freshek 07.08.2017 / 18:25

1 resposta

2

Os retrocessos '' foram preteridos em favor de subcomandos executados com $(...) . Além disso, você deve substituir as aspas simples por aspas duplas no caso de ter nomes de arquivos com espaços neles.

Nota: Você pode usar as aspas simples em torno dos nomes dos arquivos com espaços, mas deve usar aspas duplas em torno dos subcomandos.

mv "$(ls | head -1)" "Music/my playlist/"

Espero que isso ajude!

    
por Terrance 07.08.2017 / 18:35