马哥教育 – 第二周作业

一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

<1>命令:CP

概念:用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

语法:cp(选项)(参数)

选项:

  • -a:此参数的效果和同时指定”-dpR”参数相同;
    -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
    -f:强行复制文件或目录,不论目标文件或目录是否已存在;
    -i:覆盖既有文件之前先询问用户;
    -l:对源文件建立硬连接,而非复制文件;
    -p:保留源文件或目录的属性;
    -R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
    -s:对源文件建立符号连接,而非复制文件;
    -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
    -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
    -b:覆盖已存在的文件目标前将目标文件备份;
    -v:详细显示命令执行的操作。

例如:

① :cp file /usr/men/tmp/file1 (将文件file复制到目录/usr/men/tmp下,并改名为file1)

②:cp -r /usr/men /usr/zh(将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh中)

③:cp -i /usr/men m*.c /usr/zh(交互式地将目录/usr/men中的以m打头的所有.c文件复制到目录/usr/zh中)

④:cp aaa/* /bbb
(复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。)

⑤:cp -r aaa/* /bbb
(这次依然需要按Y来确认操作,但是没有忽略子目录。)

⑥:cp -r -a aaa/* /bbb
(依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。)

⑦:\cp -r -a aaa/* /bbb
(成功,没有提示按Y、传递了目录属性、没有略过目录。)

<2>命令:mv

概念:用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。

语法:mv(选项)(参数)

选项:

  • –backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
    -b:当文件存在时,覆盖前,为其创建一个备份;
    -f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
    -i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
    –strip-trailing-slashes:删除源文件中的斜杠“/”;
    -S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
    –target-directory=<目录>:指定源文件要移动到目标目录;
    -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

例如:

①:mv ex3 new1 (将文件ex3改名为new1)

②:mv /usr/men/* . (将目录/usr/men中的所有文件移到当前目录(用.表示))

 

<3>命令:rm

概念:删除一个目录中的一个或多个目录或文件

语法:rm (选项)(参数)

选项:

  • -d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;
    -f:强制删除文件或目录;
    -i:删除已有文件或目录之前先询问用户;
    -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
    –preserve-root:不对根目录进行递归操作;
    -v:显示指令的详细执行过程。

例如:

①:rm -i test example  (交互式删除当前目录下的文件test和example)

②:rm -r * (删除当前目录下除隐含文件外的所有文件和子目录)

 

二、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
1、命令执行的状态结果:
bash通过状态返回值来输出此结果:
成功:0
失败:1-255
命令执行完成之后,其状态返回值保存于bash的特殊变量$?中

2、bash基础特性:
命令补全:
给定的打头字符串如果能惟一标识某命令程序文件,则直接补全;
不能惟一标识某命令程序文件,再击tab键一次,会给出列表;

3、路径补全:
在给定的起始路径下,以对应路径下的打头字串来逐一匹配起始路径下的每个文件:
tab:
如果能惟一标识,则直接补全;
否则,再一次tab,给出列表;

快捷键:
Ctrl+a:跳转至命令行行首
Ctrl+e:跳转至命令行行尾
Ctrl+u:删除行首至光标所在处之间的所有字符;
Ctrl+k:删除光标所在处至行尾的所有字符;
Ctrl+l:清屏,相当于clear

三、请使用命令行展开功能来完成以下练习:
(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d:

mkdir -pv /tmp{a,b}_{c,d}

(2)、创建/tmp/mylinux目录下的:

 

图片3

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99098

发表评论

登录后才能评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班