Linux
几乎大多数工作都可以在命令行下完成,除非要运行图形化工具。Linux bash shell
提供了许多命令,例如:在命令行下可以轻松的完成文件的创建和删除。
本关将介绍如何在Linux
命令行下创建文件和删除文件。
Linux创建文件
Linux
中使用touch
命令来创建一个空文件。
具体命令如下:
touch 文件名
具体说明:
如果一次想创建多个文件,则每个文件名用空格隔开。
touch
命令创建一个指定的新文件,并将当前登录用户作为文件所有者。
由于touch
命令创建的文件为空,所以文件的大小为0。
touch
命令还可以用于更改文件的访问时间和修改时间,而不改变文件的内容。
应用示例一:
在Linux
系统命令行下创建一个新的文件,文件名为:newFile
,则可以使用如下命令:
touch newFile
使用ls
命令来查看文件是否创建成功。
应用示例二:
在Linux
系统命令行下一次创建2
个文件,文件名分别为:newFile1
和newFile2
,则可以使用如下命令:
touch newFile1 newFile2
使用ls
命令来查看文件是否创建成功。
Linux删除文件
Linux
中使用rm
命令来删除一个已经存在的文件。
具体命令如下:
rm 参数 文件名
常用参数如下:
具体说明:
如果一次想删除多个文件,则每个文件名用空格隔开。
rm
命令可以使用通配符来删除文件。
应用示例一:
在Linux
系统命令行下删除一个文件,文件名为:newFile
,则可以使用如下命令:
rm newFile
使用ls
命令来查看文件是否删除成功。
应用示例2:
在Linux
系统命令行下一次删除2
个文件,文件名分别为:newFile1
和newFile2
,则可以使用如下命令:
rm newFile1 newFile2
使用ls
命令来查看文件是否删除成功。
应用示例三:
在Linux
系统命令行下删除一个文件同时删除前询问用户,文件名分别为:newFile
,则可以使用如下命令:
rm -i newFile
使用ls
命令来查看文件是否删除成功。
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
file1
和file2
。oldFile1
和oldFile2
。- #!/bin/bash
-
- #在以下部分写出完成任务的命令
- #***********begin*************#
-
- #新创建两个文件空文件file1和file2。
- touch file1
- touch file2
- #删除系统已存在的两个文件oldFile1和oldFile2。
- rm oldFile1
- rm oldFile2
-
- #************end**************#
本关将介绍如何在Linux
命令行下创建目录和删除目录。
Linux创建目录
Linux
中使用mkdir
命令来创建一个空目录。
具体命令如下:
mkdir 参数 目录名
常用参数如下:
-p或--parents
:若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录。具体说明:
如果一次想创建多个目录,则每个目录名用空格隔开。
mkdir
命令创建一个指定的目录,并将当前登录用户作为目录所有者。
mkdir
命令创建一个空目录后,该目录下只存在两个特殊的目录,分别是.
和..
。
应用示例一:
在Linux
系统命令行下创建一个新的目录,目录名为:newDir
,则可以使用如下命令:
mkdir newDir
使用ls
命令来查看目录是否创建成功。
应用示例二:
在Linux
系统命令行下一次创建2
个目录,目录名分别为:newDir1
和newDir2
,则可以使用如下命令:
mkdir newDir1 newDir2
使用ls
命令来查看目录是否创建成功。
应用示例三:
在Linux
系统命令行下创建一个目录如果上层目录目前尚未建立则一并将其创建,目录名分别为:Dir1/Dir2
,则可以使用如下命令:
mkdir -p Dir1/Dir2
首先查看Dir1
目录是否存在,如果不存在直接创建Dir1/Dir2
,使用ls
命令查看目录是否创建成功。
Linux删除目录
Linux
中使用rmdir
命令来删除一个已经存在的空目录。
具体命令如下:
rmdir 参数 目录名
常用参数如下:
-p或--parents
:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;具体说明:
如果一次想删除多个空目录,则每个目录名用空格隔开。
rmdir
命令可以使用通配符来删除目录。
如果想删除的目录不为空,则先使用rm
命令将目录下的所有文件都清空,然后再使用rmdir
将目录删除,或者直接使用rm -r
命令直接递归的删除整个目录。
应用示例一:
在Linux
系统命令行下删除一个空目录,目录名为:newDir
,则可以使用如下命令:
rmdir newDir
使用ls
命令来查看目录是否删除成功。
应用示例二:
在Linux
系统命令行下一次删除2
个空目录,目录名分别为:newDir1
和newDir2
,则可以使用如下命令:
rmdir newDir1 newDir2
使用ls
命令来查看目录是否删除成功。
应用示例三:
在Linux
系统命令行下删除一个目录如果上层目录为空则一并将其删除,目录名分别为:Dir1/Dir2
,则可以使用如下命令:
rmdir -p Dir1/Dir2
使用ls
命令来查看目录是否删除成4。
应用示例四:
在Linux
系统命令行下删除一个不为空的目录,则可以使用如下命令:
rm -r Dir
使用ls
命令来查看目录是否删除成功。
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
newDir1
和newDir2
。oldDir1
和oldDir2
,其中oldDir1
目录为空、oldDir2
目录不为空。- #!/bin/bash
-
- #在以下部分写出完成任务的命令
- #***********begin*************#
-
- #新创建两个空目录newDir1和newDir2。
- mkdir newDir1 newDir2
- #删除系统已存在的两个目录oldDir1和oldDir2,其中oldDir1目录为空、oldDir2目录不为空。
- rmdir oldDir1
- rm -r oldDir2
-
- #************end**************#
本关将介绍如何在Linux
命令行下对文件拷贝和重命名。
Linux拷贝文件
Linux
中使用cp
命令将一个或多个源文件复制到指定的目的目录下。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。
具体命令如下:
cp 参数 源文件 目的目录
常用参数如下:
具体说明:
cp
命令支持同时复制多个文件,当一次复制多个文件时,目的目录参数必须是一个已经存在的目录,否则将出现错误;
cp
命令支持同时复制多个文件,当一次复制多个文件时,多个文件用空格分隔。
应用示例一:
将当前目录下的一个文件拷贝到一个指定的目录下,文件名为:newFile
,目录名为:newDir
,则可以使用如下命令:
cp newFile newDir
使用ls
命令来查看文件是否拷贝成功。
应用示例二:
将当前目录下的一个文件拷贝到一个指定的目录下并重命名为newFileCpy
,文件名为:newFile
,目录名为:newDir
,则可以使用如下命令:
cp newFile newDir/newFileCpy
使用ls
命令来查看文件是否拷贝成功。
应用示例三:
将当前目录下的两个文件拷贝到一个指定的目录下,文件名为:newFile1
和newFile2
,目录名为:newDir1
,则可以使用如下命令:
cp newFile1 newFile2 newDir1
使用ls
命令来查看文件是否拷贝成功。
Linux重命名文件
Linux
中使用mv
命令来重命名一个文件名。
mv
命令还可以用来移动文件,类似于Windows
上的剪切功能。
具体命令如下:
mv 参数 目录名
常用参数如下:
具体说明:
如果一次想移动多个文件,则每个文件名用空格隔开;
mv
命令可以使用通配符来移动目录。
应用示例一:
将当前目录下的文件newFile
重命名为newFileRename
,则可以使用如下命令:
mv newFile newFileRename
使用ls
命令来查看文件是否重命名成功。
应用示例二:
将当前目录下的文件newFileRename
移动到一个指定的目录下,目录名为:Dir
,则可以使用如下命令:
mv newFileRename Dir
使用ls
命令来查看文件是否移动成功。
应用示例三:
将当前目录下的文件newFileRename
移动到一个指定的目录下并重命名为newFile
,目录名为:Dir
,则可以使用如下命令:
mv newFileRename Dir/newFile
使用ls
命令来查看文件是否移动和重命名成功。
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
file1
和file2
拷贝到目录Dir
下;file1
拷贝到目录Dir
下并重命名为file1Cpy
;file3
和file4
移动到目录Dir
下;file5
重命名为file6
。- #!/bin/bash
-
- #在以下部分写出完成任务的命令
- #***********begin*************#
-
- #将当前目录下的文件file1和file2拷贝到目录Dir下;
- cp file1 file2 Dir
- #将当前目录下的文件file1拷贝到目录Dir下并重命名为file1Cpy;
- cp file1 Dir/file1Cpy
- #将当前目录下的文件file3和file4移动到目录Dir下;
- mv file3 file4 Dir
- #将当前目录下的文件file5重命名为file6。
- mv file5 file6
-
- #************end**************#
本关将介绍如何在Linux
命令行下对目录拷贝和重命名。
Linux拷贝目录
Linux
中使用cp -r
命令将一个或多个源目录复制到指定的目录下。它可以将单个源目录复制成一个指定目录名的具体的目录或一个已经存在的目录下。
具体命令如下:
cp 参数 源目录 目的目录
常用参数如下:
具体说明:
cp
命令支持同时复制多个目录,当一次复制多个目录时,目的目录参数必须是一个已经存在的目录,否则将出现错误;
cp
命令支持同时复制多个目录,当一次复制多个目录时,多个目录名用空格分隔;
cp
命令拷贝目录和拷贝文件大致用法相似,最大差别就是拷贝目录的时候必须加上-r
参数,而拷贝文件的时候不需要加-r
参数。
应用示例一:
将当前目录下的一个目录拷贝到指定的目录下,被拷贝目录名为:Dir1
,指定目录名为:Dir2
,则可以使用如下命令:
cp -r Dir1 Dir2
使用ls
命令来查看目录是否拷贝成功。
应用示例二:
将当前目录下的一个目录拷贝到一个指定的目录下并重命名为Dir1Cpy
,被拷贝目录名为:Dir1
,指定目录名为:Dir2
,则可以使用如下命令:
cp -r Dir1 Dir2/Dir1Cpy
使用ls
命令来查看目录是否拷贝成功。
应用示例三:
将当前目录下的两个目录拷贝到一个指定的目录下,被拷贝目录名为:Dir1
和Dir2
,指定目录名为:Dir3
,则可以使用如下命令:
cp -r Dir1 Dir2 Dir3
使用ls
命令来查看目录是否拷贝成功。
Linux重命名目录
Linux
中使用mv
命令来重命名一个目录名。
mv
命令还可以用来移动目录,类似于Windows
上的剪切功能。
具体命令如下:
mv 参数 源目录 目的目录
常用参数如下:
具体说明:
如果一次想移动多个目录,则每个目录名用空格隔开。
mv
命令可以使用通配符来移动目录。
mv
命令移动目录和移动文件的使用大致一样,唯一不同的是如果出现源目录和目标目录重名,则采用合并的方式,而对于文件则是直接覆盖。
应用示例一:
将当前目录下的目录newDir
重命名为newDirCpy
,则可以使用如下命令:
mv newDir newDirCpy
使用ls
命令来查看目录是否重命名成功。
应用示例二:
将当前目录下的目录newDirCpy
移动到一个指定的目录下,指定目录名为:Dir
,则可以使用如下命令:
mv newDirCpy Dir
使用ls
命令来查看目录是否移动成功。
应用示例三:
将当前目录下的目录newDirCpy
移动到一个指定的目录下并重命名为newDir
,指定目录名为:Dir
,则可以使用如下命令:
mv newDirCpy Dir/newDir
使用ls
命令来查看目录是否移动和重命名成功。
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
Dir1
和Dir2
拷贝到目录Dir
下;Dir1
拷贝到目录Dir
下并重命名为Dir1Cpy
;Dir3
和Dir4
移动到目录Dir
下;Dir5
重命名为Dir6
。- #!/bin/bash
-
- #在以下部分写出完成任务的命令
- #***********begin*************#
-
- #将当前目录下的目录Dir1和Dir2拷贝到目录Dir下;
- cp -r Dir1 Dir2 Dir
- #将当前目录下的目录Dir1拷贝到目录Dir下并重命名为Dir1Cpy;
- cp -r Dir1 Dir/Dir1Cpy
- #将当前目录下的目录Dir3和Dir4移动到目录Dir下;
- mv Dir3 Dir4 Dir
- #将当前目录下的目录Dir5重命名为Dir6。
- mv Dir5 Dir6
- #************end**************#
本关主要讲解在Linux
命令行下如何查看文件内容和目录下内容。
本关任务:查看一个文件的内容和列出一个目录下的所有内容。
相关知识
Linux查看文件内容
Linux
中查看文件内容的命令有很多,接下来我们介绍常用的几个命令。
cat命令
具体命令如下:
cat 参数 文件名
常用参数如下:
-n 或 --number
:由1
开始对所有输出的行数编号; -b 或 --number-nonblank
:和-n
相似,只不过对于空白行不编号。具体说明:
cat
命令支持同时查看多个文件,当一次查看多个文件时,每个文件的内容都会被打印到屏幕上;
cat
命令不能对文件进行编辑操作,只能查看文件内容。
应用示例:
查看文件/etc/passwd
内容,则可以使用如下命令:
cat /etc/passwd
head命令
具体命令如下:
head 参数 文件名
常用参数如下:
-n number
:显示文件的前number
行内容;具体说明:
head
命令是从文件的开头显示内容,默认情况下只显示前10
行的内容;
head
命令不能对文件进行编辑操作,只能查看文件内容。
应用示例:
查看文件/etc/passwd
的前8
行内容,则可以使用如下命令:
head -n 8 /etc/passwd
tail命令
具体命令如下:
tail 参数 文件名
常用参数如下:
-n number
:显示文件的最后number
行内容;具体说明:
tail
命令是从文件的结尾显示内容,默认情况下只显示最后10
行的内容;
tail
命令不能对文件进行编辑操作,只能查看文件内容。
应用示例:
查看文件/etc/passwd
末尾5
行内容,则可以使用如下命令:
tail -n 5 /etc/passwd
Linux查看目录内容
Linux
中使用ls
命令来查看一个目录下的内容。
具体命令如下:
ls 参数 目录
常用参数如下:
ls
内定将档案名或目录名称为“.”的视为影藏,不会列出);inode
)。一个索引节点代表一个文件;具体说明:
应用示例一:
查看目录/mnt
下的所有信息(包括隐藏内容),则可以使用如下命令:
ls -a /mnt
应用示例二:
查看目录/mnt
下的所有信息(包括隐藏内容),同时显示每个文件的详细信息,则可以使用如下命令:
ls -al /mnt
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
file1
的所有内容;file2
的头5行内容;file2
的末尾5行内容;/home
目录下的所有内容(包括隐藏内容)。- #!/bin/bash
-
- #在以下部分写出完成任务的命令
- #***********begin*************#
-
- #查看当前目录下的文件file1的所有内容;
- cat file1
- #查看当前目录下的文件file2的头5行内容;
- head -5 file2
- #查看当前目录下的文件file2的末尾5行内容;
- tail -5 file2
- #查看目录/home目录下的所有内容(包括隐藏内容)。
- ls -a /home
-
- #************end**************#