Como eu insiro um diretório em um disco rígido diferente usando cd no terminal? [duplicado]

3

Tenho o Ubuntu 16.04 instalado no meu SSD e tenho um HDD onde guardo todos os meus arquivos e programas C ++. O Ubuntu reconhece que eu tenho o HDD. Quando estou no terminal e quero acessar meus arquivos c ++ no disco rígido como obtenho o diretório? Eu tentei usar cd , em seguida, o nome da unidade, mas isso não funcionou.

Eu gostaria de fazer com que, toda vez que eu iniciasse o meu terminal, eu estivesse automaticamente no HDD, e não no desktop também.

    
por idknuttin 29.08.2017 / 17:16

3 respostas

10

lsblk bem como mount mostram um l i s t de todos mount ed ( bl oc k ) e seu ponto de montagem, i. e. o ponto de acesso ao conteúdo do dispositivo. Para c mudar para este d irectory, em um terminal fazer:

cd /path/to/dir

Para definir um diretório padrão para cada nova sessão de terminal, basta adicionar essa linha ao arquivo .bashrc em seu diretório inicial. O seguinte comando faz isso automaticamente, você só precisa digitar o caminho certo após cd :

echo 'cd /path/to/dir' >> ~/.bashrc
    
por dessert 29.08.2017 / 18:26
8

Vou usar um exemplo do meu sistema. Seu sistema terá nomes de unidade diferentes, por isso, ajuste de acordo

Primeiro, verifique se a unidade está montada e encontre sua localização:

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0 465.8G  0 disk 
├─sda1        8:1    0   512M  0 part /boot/efi
├─sda2        8:2    0 461.4G  0 part /
└─sda3        8:3    0   3.9G  0 part [SWAP]
sdb           179:0    0   3.7G  0 disk 
└─sdb1        179:1    0   3.7G  0 part 

O sistema de arquivos na outra unidade, sdb1 não está montado, então eu vou montá-lo usando o utilitário udisksctl

$ udisksctl mount -b /dev/sdb1
Mounted /dev/sdb1 at /media/zanna/WORK STUFF

Agora posso cd para o ponto de montagem assim:

zanna@xubi:~$ cd /media/zanna/WORK\ STUFF/
zanna@xubi:/media/zanna/WORK STUFF$     

observe o caractere \ no caminho, necessário para escapar do espaço. Você mesmo pode digitar isso, ou simplesmente pressionar TAB depois de digitar os primeiros caracteres do nome.

Para garantir que o sistema de arquivos seja montado no momento da inicialização, você pode adicionar uma linha ao seu /etc/fstab , se ainda não houver um presente. Você pode criar um ponto de montagem para a unidade com qualquer nome que desejar:

mkdir /media/$USER/mydrive

Exatamente como isso deve parecer depende do tipo de sistema de arquivos. É mais robusto (IMHO) montar discos pelo UUID do que pelo rótulo, portanto, para obter o UUID e o tipo de sistema de arquivos com um comando, use

$ sudo blkid
[...]
/dev/sdb1: UUID="2d8afeac-c623-4be7-b261-44920e6b8e71" TYPE="ext4" [...]

O tipo de sistema de arquivos, neste caso, é ext4, então o que eu faria então é

sudo cp /etc/fstab /etc/fstab.bak
sudoedit /etc/fstab

e verificam que ainda não existe uma linha para a partição - linhas duplicadas para a mesma partição causarão erros. Se não houver, então eu adicionaria uma linha no final incluindo o UUID (use o que você obteve de blkid , não meu exemplo abaixo!), O ponto de montagem e o tipo de sistema de arquivos como este:

UUID=2d8afeac-c623-4be7-b261-44920e6b8e71 /media/zanna/mydrive ext4 defaults 0 0

Se a partição for uma partição NTFS, a linha será

UUID=2d8afeac-c623-4be7-b261-44920e6b8e71 /media/zanna/mydrive ntfs-3g auto,user,rw 0 0

Se você precisar reverter as alterações feitas, restaure seu backup:

sudo mv /etc/fstab.bak /etc/fstab

Para mais informações sobre /etc/fstab , veja a página de ajuda do Ubuntu .

Para definir um diretório padrão para as sessões de terminal, consulte Definindo o caminho padrão ao abrir uma sessão de terminal .

NB: Em geral, usar o etckeeper é preferível a fazer backups ad-hoc vulneráveis de coisas em /etc

    
por Zanna 29.08.2017 / 18:26
4

Abra o Nautilus, que é o navegador de arquivos padrão no Ubuntu. Selecione o diretório de destino. Em seguida, clique com o botão direito do mouse sobre ele e escolha "Abrir no Terminal" no menu de contexto.

No terminal aberto, digite pwd . Este comando irá imprimir o caminho completo para a localização atual (o valor atual da variável de ambiente $PWD ). Você pode usar esse caminho com o comando cd da próxima vez e também pode anexar esse comando cd ao final de ~/.bashrc para definir esse caminho como 'diretório de terminal padrão'. Você pode fazer isso pelo comando:

echo -e "\ncd '$(pwd)'" | tee -a ~/.bashrc

Onde:

  • echo imprime para o stdout a cadeia entre aspas. A opção -e permitirá a interpretação de escapes de barra invertida, portanto \n será interpretado como nova linha.

  • '$(pwd)' expandirá a saída do comando pwd como string, colocado entre aspas simples.

    Em vez dessa expressão, podemos usar '$PWD' , que (nesse caso) produzirá o mesmo resultado.

  • o canal | redirecionará o stdout para o stdin do comando tee .

  • A opção
  • tee with -a anexará a string ao final do arquivo .bashrc , localizado no diretório $HOME == ~/ (e também imprimirá a string no stdout ).

por pa4080 29.08.2017 / 19:36