Trabalhando Com Arquivos e Diretórios
Descrição
Ensino: 30 min
Exercícios: 20 min.Dúvidas
Como posso criar, copiar e excluir arquivos e diretórios?
Como posso editar os ficheiros?
objectivos
criar uma hierarquia de pastas que corresponda a um dado Diagrama.
Crie ficheiros nessa hierarquia usando um editor ou copiando e renomeando ficheiros existentes.
Delete, copie e mova os ficheiros e / ou pastas especificados.
a Criação de diretórios
agora sabemos como explorar arquivos e diretórios,mas como podemos criá-las em primeiro lugar?
Passo um: veja onde estamos e o que já temos
Vamos voltar para o nosso data-shell diretório no Desktopand usar ls -F para ver o que ele contém:
$ pwd
/Users/nelle/Desktop/data-shell
$ ls -F
creatures/ data/ molecules/ north-pacific-gyre/ notes.txt pizza.cfg solar.pdf writing/
Crie um diretório
Vamos criar um novo diretório chamado thesis usando o comando mkdir thesis(que não tem saída):
$ mkdir thesis
Como você pode adivinhar o seu nome,mkdir significa “marca o diretório’.Uma vez que thesis é o caminho relativo (i.e., não tem uma barra à esquerda, como /what/ever/thesis),o novo diretório é criado no diretório de trabalho atual:
$ ls -F
creatures/ data/ molecules/ north-pacific-gyre/ notes.txt pizza.cfg solar.pdf thesis/ writing/
Desde que acabamos de criar o thesis diretório, não há nada nele ainda:
$ ls -F thesis
Note que mkdir não é limitado para criar uma única diretórios um de cada vez. -p opção permite que mkdir para criar um diretório com qualquer número de subpastas aninhadas em uma única operação:
$ mkdir -p thesis/chapter_1/section_1/subsection_1
-R opção ls comando irá listar todos os aninhadas subdiretórios dentro de um diretório. Vamos usar ls -FR para listar recursivamente a nova hierarquia de diretórios que acabamos de criar sob o thesis directório:
$ ls -FR thesischapter_1/thesis/chapter_1:section_1/thesis/chapter_1/section_1:subsection_1/thesis/chapter_1/section_1/subsection_1:
Duas maneiras de fazer a mesma coisa
Usando o shell para criar um diretório não é diferente do que usar um gerenciador de arquivos.Se abrir a pasta actual usando o explorador gráfico de ficheiros do seu sistema operativo, a pasta
thesisirá aparecer também aí.Enquanto a shell e o file explorer são duas maneiras diferentes de interagir com os arquivos,os arquivos e diretórios em si são os mesmos.
Bons nomes para arquivos e diretórios
Complicado nomes de arquivos e diretórios pode tornar a sua vida painfulwhen a trabalhar na linha de comando. Aqui nós fornecemos algumas dicas de uso para os nomes de seus arquivos.
não utilize espaços.
espaços podem fazer um nome mais significativo, mas como espaços são usados para separar argumentos sobre o comando lineit é melhor evitá-los em nomes de arquivos e diretórios.Você pode usar
-ou_em vez disso (e.g.north-pacific-gyre/rather thannorth pacific gyre/).não comece o nome com
-(traço).os comandos tratam os nomes começando com
-como opções.ficar com letras, números,
.(período ou “full stop”),-(traço) e_(sublinhado).muitos outros caracteres têm significados especiais na linha de comandos.Vamos aprender sobre alguns destes durante esta lição.Existem caracteres especiais que podem fazer com que o seu comando não funcione como esperado e pode até resultar em perda de dados.Se precisar de se referir a nomes de ficheiros ou pastas que tenham espaços ou outros caracteres especiais, deverá rodear o nome entre aspas (
"").
Crie um arquivo de texto
Vamos mudar nosso directório de trabalho thesis uso de cde,em seguida, executar um editor de texto chamado Nano para criar um arquivo chamado draft.txt:
$ cd thesis$ nano draft.txt
Qual Editor?
Quando dizemos, ‘
nanoé um editor de texto’ nós realmente significa ‘texto’: ele canonly de trabalho com carácter simples dados, e não em tabelas, imagens, ou qualquer otherhuman-friendly mídia. Nós o usamos em exemplos porque é um dos últimos editores de texto complexos. No entanto, devido a esta característica, pode não ser suficientemente poderosa ou flexível para o trabalho que precisa de fazer depois desta oficina. Em sistemas Unix (como Linux e macOS),muitos programadores usam emacs orVim (ambos os quais requerem mais tempo para aprender),ou um editor gráfico como o gedit. No Windows, você pode desejar o uso do Notepad++. O Windows também tem um built-ineditor chamado denotepadque pode ser executado a partir da linha de comando no samewaynanopara os fins desta lição.independentemente do editor que use, terá de saber onde procura e grava os ficheiros. Se o iniciar a partir da linha de comandos, irá (provavelmente)usar o seu directório de trabalho actual como a sua localização predefinida. Se você usar o menu Iniciar do seu computador, ele pode querer salvar arquivos em seu diretório de ordocuments desktop em vez disso. Você pode mudar isso navegando para outra diretoria da primeira vez que você’salvar como…’
vamos digitar em algumas linhas de texto.Uma vez que estamos felizes com o nosso texto, podemos pressionar Ctrl+O(pressione a tecla Ctrl ou a tecla Control e, whileholding-a pressionada, pressionar a tecla) para escrever os nossos dados para o disco(vamos ser perguntado qual arquivo que deseja salvar este:pressione enter para aceitar o padrão sugerida de draft.txt).

Uma vez que o nosso Ficheiro seja gravado, podemos usar o Ctrl+X para sair do editor e voltar à linha de comandos.
Control, Ctrl, ou ^ Key
a chave de controlo também é chamada de ‘Ctrl’. Existem várias formas de utilizar a chave de controlo que podem ser descritas. Por exemplo, você pode ver uma instrução para pressionar a tecla de controle e,ao segurá-la, pressione a tecla X, descrita como qualquer um dos:
Control-XControl+XCtrl-XCtrl+X^XC-xNo nano, ao longo da parte inferior da tela, você verá
^G Get Help ^O WriteOut.Isso significa que você pode usarControl-Gpara obter ajuda eControl-Opara salvar yourfile.
nano não deixe de saída na tela depois que ele sai,mas ls agora mostra que temos criado um arquivo chamado draft.txt:
$ ls
draft.txt
a Criação de Arquivos de uma Forma Diferente
Nós vimos como criar arquivos de texto usando o
nanoeditor.Agora, tente o seguinte comando:$ touch my_file.txt
o Que
touchcomando faz?Quando você olha para o seu diretório atual usando o Explorador de arquivos GUI,O arquivo aparece?Use para inspeccionar os ficheiros. Quão grande é
my_file.txt?Quando deseja criar um ficheiro desta forma?
Solução
touchcomando gera um novo arquivo chamadomy_file.txtinyour diretório atual. Pode observar este ficheiro recém-gerado escrevendolsna linha de comandos.my_file.txttambém pode ser visto no yourgui file explorer.Quando inspeccionar o ficheiro com , note que o tamanho de
my_file.txté 0 bytes. Por outras palavras, não contém dados.Se abrirmy_file.txtusando o seu editor de texto, está em branco.Alguns programas não geram os próprios ficheiros de saída, mas o instead exige que os ficheiros vazios já tenham sido gerados.Quando o programa é executado, ele procura por um arquivo existente topopular com sua saída. O comando touch permite-lhe gerar de forma eficiente um ficheiro de texto em branco para ser usado por estes programas.
o Que há Em Um Nome?
você pode ter notado que todos os arquivos de Nelle são chamados de ‘algo dotsomething’, e nesta parte da lição, nós sempre usamos a extensão
.txt. Esta é apenas uma convenção: podemos chamar um arquivomythesisoralmost qualquer outra coisa que quisermos. No entanto, a maioria das pessoas usa dois nomes da maioria das vezes para ajudá-los (e seus programas) dizer diferentes tipos de arquivos separados. A segunda parte de um nome é chamado thefilename extensão, e indicateswhat tipo de dados que o arquivo contém:.txtsinais de um simples arquivo de texto,.cfgé um arquivo de configuração completo do parametersfor algum programa ou outro, o.pngé uma imagem PNG, e assim por diante.esta é apenas uma convenção, embora importante. Ficheiros containbytes: cabe a nós e aos nossos Programas interpretar esses bytesde acordo com as regras para arquivos de texto simples, documentos PDF, arquivos de configuração, imagens, etc.a Nomeação de uma imagem PNG de uma baleia
whale.mp3não somehowmagically transformá-lo em uma gravação de whalesong, embora mightcause o sistema operacional para tentar abrir-lo, com uma música de playerwhen alguém clica duas vezes nele.
Mover arquivos e diretórios
Retornando para o data-shell diretório,
cd ~/Desktop/data-shell/
nossa thesis diretório temos um arquivo draft.txtque não é particularmente um nome informativo,então vamos mudar o nome do arquivo usando mvqual é a abreviação para ‘mover’:
$ mv thesis/draft.txt thesis/quotes.txt
O primeiro argumento diz mv o que estamos ‘em movimento’,enquanto o segundo é onde está a ir.Neste caso, estamos movendo thesis/draft.txt para ,que tem o mesmo efeito que renomear o arquivo.Com certeza,ls nos mostra que thesis agora contém um arquivo chamado quotes.txt:
$ ls thesis
quotes.txt
Um tem que ter cuidado ao especificar o nome do arquivo destino, desde mv willsilently substituir qualquer arquivo existente com o mesmo nome, que couldlead à perda de dados. Uma opção adicional, mv -i (ou mv --interactive),pode ser usado para fazer mv pedir confirmação antes de substituir.
Note que mv também funciona em diretórios.
vamos mover quotes.txt para a pasta de trabalho actual.Nós usamos mv mais uma vez,mas desta vez vamos usar apenas o nome de um diretório como o segundo argumentto dizer mv que queremos manter o nome,mas colocar o arquivo em algum lugar novo.(É por isso que o comando é chamado de ‘mover’.)Neste caso, o nome de diretório que usamos é o nome de diretório especial . que mencionamos anteriormente.
$ mv thesis/quotes.txt .
o efeito é mover o ficheiro da pasta em que estava para a pasta de trabalho actual.ls agora nos mostra que thesis está vazio:
$ ls thesis
além disso,ls com um nome de ficheiro ou nome de diretório como um argumento apenas listas de arquivo ou diretório.Podemos usar isto para ver que quotes.txt ainda está em nosso diretório atual:
$ ls quotes.txt
quotes.txt
Mover Arquivos para uma nova pasta
Depois de executar os comandos a seguir,Jamie percebe que ela colocou os arquivos
sucrose.datemaltose.datpara a pasta errada. Os arquivos devem ter sido colocados na pastaraw.$ ls -F analyzed/ raw/$ ls -F analyzedfructose.dat glucose.dat maltose.dat sucrose.dat$ cd analyzedPreencha os espaços em branco para mover esses arquivos para o
raw/pasta(por exemplo, o que ela esqueceu de colocá-los em)$ mv sucrose.dat maltose.dat ____/____Solução
$ mv sucrose.dat maltose.dat ../rawLembre-se de que
..refere-se ao diretório pai (por exemplo, um acima do diretório atual)e que.refere-se ao diretório atual.
Copiar arquivos e diretórios
cp comando funciona muito bem como o mv,à exceção de cópias de um arquivo em vez de movê-lo.Podemos verificar que ele fez a coisa certa, usando o lscom dois caminhos como argumentos — como a maioria dos comandos Unix,ls pode ser dado vários caminhos de uma só vez:
$ cp quotes.txt thesis/quotations.txt$ ls quotes.txt thesis/quotations.txt
quotes.txt thesis/quotations.txt
podemos também copiar um diretório e todo o seu conteúdo usando therecursive opção -r,por exemplo, para fazer backup de um diretório:
$ cp -r thesis thesis_backup
podemos verificar o resultado listando o conteúdo de ambas as thesis e thesis_backup diretório:
$ ls thesis thesis_backup
thesis:quotations.txtthesis_backup:quotations.txt
mudar o nome de Ficheiros
Suponha que você criou um simples arquivo de texto no diretório atual para conter uma lista de thestatistical testes que você vai precisar para fazer a analisar seus dados, e o nome é:
statstics.txtDepois de criar e salvar este arquivo, você perceber que você mal escrito o nome do arquivo! Quer corrigir o erro, qual dos seguintes comandos pode usar para o fazer?
cp statstics.txt statistics.txtmv statstics.txt statistics.txtmv statstics.txt .cp statstics.txt .Solução
- Não. Embora isso criasse um arquivo com o nome correto, O arquivo incorretamente nomeado ainda existe na diretoria e precisaria ser excluído.
- Yes, this would work to rename the file.não, o período(.) indica para onde mover o arquivo, mas não fornece um novo nome de arquivo; nomes de arquivo idênticos não podem ser criados.não, o período(.) indica onde copiar o arquivo, mas não fornece um novo nome de arquivo; nomes de arquivo idênticos não podem ser criados.
Mover e Copiar
o Que é a saída de fechamento
lscomando na seqüência apresentada a seguir?$ pwd/Users/jamie/data$ lsproteins.dat$ mkdir recombined$ mv proteins.dat recombined/$ cp recombined/proteins.dat ../proteins-saved.dat$ ls
proteins-saved.dat recombinedrecombinedproteins.dat recombinedproteins-saved.datSolution
We start in the
/Users/jamie/datadirectory, and create a new folder calledrecombined.A segunda linha se move (mvo arquivoproteins.datpara a nova pasta (recombined).A terceira linha faz uma cópia do ficheiro que mudámos. A parte complicada aqui é onde o arquivo foi aberto. Recall that..means ‘go up a level’, so the copied file is now in/Users/jamie.Notice that..is interpreted with respect to the current workingdirectory, not with respect to the location of the file being copied.Então, a única coisa que vai mostrar usando ls (em/Users/jamie/data) é a pasta recombinada.não, ver explicação acima.proteins-saved.datestá localizado em/Users/jamieSim não, ver explicação acima. proteins.datestá localizado em/Users/jamie/data/recombinedNo, ver explicação acima. proteins-saved.datlocalizado em/Users/jamie
Remover arquivos e diretórios
Retornando para o data-shell diretório,vamos arrumar este diretório removendo o quotes.txt arquivo que criamos.O comando Unix nós vamos usar para isso é rm (abreviação para ‘remover’):
$ rm quotes.txt
Nós podemos confirmar que o arquivo tenha ido usando ls:
$ ls quotes.txt
ls: cannot access 'quotes.txt': No such file or directory
a Exclusão É para Sempre
O shell do Unix não tem uma lixeira que podemos recuperar deletedfiles do (embora a maioria das interfaces gráficas para Unix de fazer). Ao invés disso, quando apagamos arquivos, eles são desligados do sistema de arquivos para que seu espaço de armazenamento no disco possa ser reciclado. Existem ferramentas para encontrar e recuperar arquivos apagados, mas não há garantia de que eles funcionem em qualquer situação particular, uma vez que o computador pode reciclar o espaço do disco do computador imediatamente.
Usando rm com Segurança
o Que acontece quando executamos
rm -i thesis_backup/quotations.txt?Por que queremos essa proteção quando usamosrm?Solução
$ rm: remove regular file 'thesis_backup/quotations.txt'? y
-iopção de linha de comandos antes (cada) remoção (use Y para confirmar a exclusão ou N para manter o arquivo).A shell Unix não tem uma caixote do lixo, então todos os arquivos removidos irão desaparecer forever.By usando a opção-i, temos a chance de verificar que estamos apagando apenas os arquivos que queremos remover.
Se a gente tentar remover o thesis diretório usando rm thesis,obtemos uma mensagem de erro:
$ rm thesis
rm: cannot remove `thesis': Is a directory
Isso acontece porque rm por padrão, só funciona em arquivos, diretórios não.
rm pode remover um directório e todo o seu conteúdo se usarmos a opção therecursiva -r, e fá-lo-á sem qualquer indicação de confirmação:
$ rm -r thesis
uma vez que não há nenhuma maneira de recuperar arquivos apagados usando o shell,rm -r deve ser usado com grande cautela (você pode adicionar a opção interactiva rm -r -i).
operações com vários ficheiros e directórios
muitas vezes é necessário copiar ou mover vários ficheiros ao mesmo tempo. Isto pode ser feito fornecendo uma lista de nomes de arquivos individuais, ou especificando um padrão de nomes usando caracteres especiais.
Copiar com vários nomes de Ficheiros
para este exercício, poderá testar os comandos no directório
data-shell/data.no exemplo abaixo, o que faz
cpquando dado vários nomes de arquivos e um nome de diretório?$ mkdir backup$ cp amino-acids.txt animals.txt backup/No exemplo abaixo, o que faz
cpo fazem quando têm três ou mais nomes de arquivo?$ ls -Famino-acids.txt animals.txt backup/ elements/ morse.txt pdb/ planets.txt salmon.txt sunspot.txt$ cp amino-acids.txt animals.txt morse.txtSolução
Se dado mais do que um nome de arquivo seguido por um nome de directório (por exemplo, o diretório de destino mustbe o último argumento),
cpcopia os arquivos para o diretório especificado.se forem dados três nomes de arquivos,
cplança um erro como o abaixo, porque ele está esperando um nome de diretor como o último argumento.cp: target ‘morse.txt’ is not a directory
Using wildcards for accessing multiple files at once
Wildcards
*is a wildcard, which matches zero or more characters.Let’s consider thedata-shell/moleculesdirectory:*.pdbmatchesethane.pdbpropane.pdb, and everyfile that ends with ‘.pdb’. Por outro lado, op*.pdbcorresponde apenaspentane.pdbepropane.pdb, porque o ” p ” na frente onlymatches nomes de arquivos que começam com a letra ‘p’.
?também é um curinga, mas não substitui exatamente um caracter.Portanto,?ethane.pdbcorresponderiamethane.pdbenquanto*ethane.pdbcorrespondeethane.pdbemethane.pdb.as aves selvagens podem ser utilizadas em combinação com cada uma das outras espécies.g.???ane.pdbcorresponde a três caracteres seguido porane.pdbdarcubane.pdb ethane.pdb octane.pdb.Quando a linha de comandos vê uma carta especial, expande a carta para criar uma lista de nomes de ficheiros correspondentes antes de executar o comando que foi pedido. Como uma exceção, se uma expressão de caracteres especiais não matchany file, Bash irá passar a expressão como um argumento para os comandos que é. Por exemplo, escrevendo
ls *.pdfmoleculesdiretório(que contém somente os arquivos com nomes terminando com.pdb) resultados inan mensagem de erro que não há nenhum arquivo chamadowcelsveja as listas de nomes de arquivo que correspondam a estas expressões, mas não o wildcardsthemselves. É a concha, não os outros programas, que lida com a expressão wildcards, e este é outro exemplo de design ortogonal.
Lista de nomes de ficheiros correspondentes a um padrão
Quando executar o
moleculesdiretório, quelscomando(s) willproduce essa saída?
ethane.pdb methane.pdb
ls *t*ane.pdbls *t?ne.*ls *t??ne.pdbls ethane.*Solution
The solution is
shows all files whose names contain zero or more characters (*) followed by the lettert, then zero or more characters (*) followed byane.pdb. Isto dáethane.pdb methane.pdb octane.pdb pentane.pdb.
mostra todos os arquivos cujos nomes começam com zero ou mais caracteres (*) seguido da letra ”te, em seguida, um único caractere (?), em seguida,ne.seguido por zero ou mais caracteres (*). Isso nos daráoctane.pdbepentane.pdbmas não corresponde a nada, que termina com a tagthane.pdb.
corrige os problemas da opção 2 combinando dois caracteres (??entretene. Esta é a solução.
apenas mostra os ficheiros que começam comethane..
Mais sobre Curingas
Sam tem um diretório que contém dados de calibração, conjuntos de dados e descrições dos conjuntos de dados:
.├── 2015-10-23-calibration.txt├── 2015-10-23-dataset1.txt├── 2015-10-23-dataset2.txt├── 2015-10-23-dataset_overview.txt├── 2015-10-26-calibration.txt├── 2015-10-26-dataset1.txt├── 2015-10-26-dataset2.txt├── 2015-10-26-dataset_overview.txt├── 2015-11-23-calibration.txt├── 2015-11-23-dataset1.txt├── 2015-11-23-dataset2.txt├── 2015-11-23-dataset_overview.txt├── backup│ ├── calibration│ └── datasets└── send_to_bob ├── all_datasets_created_on_a_23rd └── all_november_filesAntes de Partir para outra viagem de campo, ela quer Confirmar os seus dados e enviar alguns conjuntos de dados ao seu colega Bob. O Sam usa os seguintes comandos para fazer o trabalho:
$ cp *dataset* backup/datasets$ cp ____calibration____ backup/calibration$ cp 2015-____-____ send_to_bob/all_november_files/$ cp ____ send_to_bob/all_datasets_created_on_a_23rd/ajuda o Sam preenchendo os espaços em branco.
A resultante estrutura de diretório deve olhar como este
.├── 2015-10-23-calibration.txt├── 2015-10-23-dataset1.txt├── 2015-10-23-dataset2.txt├── 2015-10-23-dataset_overview.txt├── 2015-10-26-calibration.txt├── 2015-10-26-dataset1.txt├── 2015-10-26-dataset2.txt├── 2015-10-26-dataset_overview.txt├── 2015-11-23-calibration.txt├── 2015-11-23-dataset1.txt├── 2015-11-23-dataset2.txt├── 2015-11-23-dataset_overview.txt├── backup│ ├── calibration│ │ ├── 2015-10-23-calibration.txt│ │ ├── 2015-10-26-calibration.txt│ │ └── 2015-11-23-calibration.txt│ └── datasets│ ├── 2015-10-23-dataset1.txt│ ├── 2015-10-23-dataset2.txt│ ├── 2015-10-23-dataset_overview.txt│ ├── 2015-10-26-dataset1.txt│ ├── 2015-10-26-dataset2.txt│ ├── 2015-10-26-dataset_overview.txt│ ├── 2015-11-23-dataset1.txt│ ├── 2015-11-23-dataset2.txt│ └── 2015-11-23-dataset_overview.txt└── send_to_bob ├── all_datasets_created_on_a_23rd │ ├── 2015-10-23-dataset1.txt │ ├── 2015-10-23-dataset2.txt │ ├── 2015-10-23-dataset_overview.txt │ ├── 2015-11-23-dataset1.txt │ ├── 2015-11-23-dataset2.txt │ └── 2015-11-23-dataset_overview.txt └── all_november_files ├── 2015-11-23-calibration.txt ├── 2015-11-23-dataset1.txt ├── 2015-11-23-dataset2.txt └── 2015-11-23-dataset_overview.txtSolução
$ cp *calibration.txt backup/calibration$ cp 2015-11-* send_to_bob/all_november_files/$ cp *-23-dataset* send_to_bob/all_datasets_created_on_a_23rd/a Organização de Diretórios e Arquivos
Jamie está trabalhando em um projeto e vê que seus arquivos não são muito wellorganized:
$ ls -Fanalyzed/ fructose.dat raw/ sucrose.dat
fructose.datesucrose.datarquivos de conter a saída de seu dataanalysis. Qual(s) comando (s) coberto (s) nesta lição ela precisa executar de modo que os comandos abaixo irão produzir o resultado mostrado?$ ls -Fanalyzed/ raw/$ ls analyzedfructose.dat sucrose.datSolution
mv *.dat analyzedJamie needs to move her files
fructose.datandsucrose.datto theanalyzeddirectory.The shell will expand *.dat to match all .dat files in the current directory.Themvcommand then moves the list of .ficheiros dat para o directório ‘analisado’.Reproduzir uma estrutura de pastas
Você está começando uma nova experiência, e gostaria de duplicar o directorystructure a partir de sua experiência anterior, então você pode adicionar novos dados.
Suponha que o experimento anterior em uma pasta chamada ‘2016-05-18’,que contém um
datapasta que contém pastas com o nomeraweprocessedque contém arquivos de dados. O objetivo é copiar a pasta structureof2016-05-18-datapasta em uma pasta chamada2016-05-20para que seu final de estrutura de diretório parecido com este:2016-05-20/└── data ├── processed └── rawQue o seguinte conjunto de comandos seria alcançar esse objetivo?O que fariam os outros comandos?
$ mkdir 2016-05-20$ mkdir 2016-05-20/data$ mkdir 2016-05-20/data/processed$ mkdir 2016-05-20/data/raw$ mkdir 2016-05-20$ cd 2016-05-20$ mkdir data$ cd data$ mkdir raw processed$ mkdir 2016-05-20/data/raw$ mkdir 2016-05-20/data/processed$ mkdir -p 2016-05-20/data/raw$ mkdir -p 2016-05-20/data/processed$ mkdir 2016-05-20$ cd 2016-05-20$ mkdir data$ mkdir raw processedSolução
Os dois primeiros conjuntos de comandos de alcançar este objectivo.O primeiro conjunto usa caminhos relativos para criar o diretório de nível superior antes das sub-pastas.
o terceiro conjunto de comandos irá dar um erro porque o comportamento por omissão de
mkdirnão irá criar uma subdirectoria de uma pasta não-existente: as pastas de nível intermédio devem ser criadas primeiro.O quarto conjunto de comandos atinge este objectivo. Lembre-se, a opção
-p, seguida por um caminho de um ou mais diretórios, fará com quemkdircrie quaisquer subdiretórios intermediários conforme necessário.O conjunto final de comandos gera as pastas’ raw’ e ‘processadas’ no mesmo nível que o diretório ‘data’.
Pontos-Chave
cpcopia um arquivo.
mkdircria uma nova pasta.
mvmove (renomeia) um ficheiro ou directório.
rmremove (apaga) um ficheiro.
*matches zero or more characters in a filename, so*.txtmatches all files ending in.
?corresponde a qualquer um único caractere em um nome de arquivo, portanto,?.txtjogosa.txtmas nãoany.txt.o Uso da chave de Controlo pode ser descrita de várias maneiras, incluindo
Ctrl-XControl-Xe^X.a linha de comandos não tem caixote do lixo: quando algo é apagado, desaparece.
a maioria dos nomes dos ficheiros são
something.extension. A extensão não é necessária, e não garante nada, mas é normalmente usado para indicar o tipo de dados no arquivo.dependendo do tipo de trabalho que você faz, você pode precisar de um editor de texto mais poderoso do que Nano.
Leave a Reply