檔案操作命令

將在此處介紹的命令列表:

ls     #view contents of a directory
touch  #create new file
mkdir  #create new directory
cp     #copy contents of one file to another
mv     #move file from one location to another
rm     #delete a file or directory

這是一個例子

jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     test.cpp

顯示當前目錄

jennifer@my_computer:~/Desktop$ ls c++\ projects
DNA_analysis.cpp        encryption.cpp  pool_game.cpp

顯示目錄“c ++ projects”。檔名中的空格字元鍵入為“\”。

觸控示例

jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     test.cpp
jennifer@my_computer:~/Desktop$ touch ruby_test.rb
jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     ruby_test.rb    test.cpp

mkdir 的例子

jennifer@my_computer:~/Desktop$ mkdir ruby
jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     ruby    ruby_test.rb    test.cpp
jennifer@my_computer:~/Desktop$ cd ruby
jennifer@my_computer:~/Desktop/ruby$ ls
<nothing>
jennifer@my_computer:~/Desktop/ruby

它實際上並沒有列印 <nothing>。這就是我如何表示它不輸出任何東西

cp 例子

jennifer@my_computer:~/Desktop/ruby$ cd ..
jennifer@my_computer:~/Desktop$ cp test.cpp c++_test.cpp
jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby_test.rb
test.cpp

這是最後一個 arg 到 cp,在這種情況下“c ++ _ test.cpp”不是現有目錄。cp 將建立一個名為“c ++ _ test.cpp”的檔案,其內容與“test.cpp”的內容相同。如果 c ++ _ test.cpp 已經存在,那麼在複製“test.cpp”的內容之前,cp 會刪除以前的內容。

jennifer@my_comptuer:~/Desktop$ ls ruby
<nothing>
jennifer@my_computer:~/Desktop$ cp ruby_test.rb ruby
jennifer@my_computer:~/Desktop$ ls ruby
ruby_test.rb

這是當 cp 的最後一個 arg(在本例中為 ruby)是一個目錄時發生的情況。cp 建立一個與“ruby_test.rb”同名的檔案,但是在目錄 ruby 中。

mv 例子

jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby_test.rb
test.cpp
jennifer@my_computer:~/Desktop$ mv ruby_test.rb ruby\ test.rb
jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby test.rb
test.cpp

這是當 mv 的最後一個 arg(在本例中為“ruby test.rb”)不是現有目錄時發生的情況。檔案“ruby_test.rb”已重新命名為“ruby test.rb”。如果“ruby test.rb”已經存在,它將被覆蓋注意,再次,空格前面有一個’’。

jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby test.rb
test.cpp
jennifer@my_computer:~/Desktop$ ls c++\ projects
DNA_analysis.cpp        encryption.cpp  pool_game.cpp
jennifer@my_computer:~/Desktop$ mv test.cpp c++\ projects
jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby test.rb
jennifer@my_computer:~/Desktop$ ls c++\ projects
DNA_analysis.cpp        encryption.cpp  pool_game.cpp   test.cpp

mv 是已經存在的目錄時會發生這種情況。檔案“test.cpp”被移動到目錄“c ++ projects”。

例子

jennifer@my_computer:~/Desktop$ ls
c++ projects    c++_test.cpp    Research Paper.docx     ruby    ruby test.rb
jennifer@my_computer:~/Desktop$ rm c++_test.cpp
jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     ruby    ruby test.rb

c ++ _ test.cpp 已被刪除

jennifer@my_computer:~/Desktop$ rm c++\ projects
rm: cannot remove 'c++ projects': Is a directory
jennifer@my_computer:~/Desktop$ ls
c++ projects    Research Paper.docx     ruby    ruby test.rb

rm 有刪除目錄的額外要求

jennifer@my_computer:~/Desktop$ rm -rf c++\ projects
jennifer@my_computer:~/Desktop$ ls
Research Paper.docx     ruby    ruby test.rb

必須新增 -rf 才能刪除目錄。

要了解有關 ls 的更多資訊,請鍵入命令 ls --help。對於 touch,鍵入 touch --help。與此處提到的所有 6 個命令一樣。這將列印出使用的詳細說明,而無需建立或刪除任何內容。