由于本人目前仍是萌新一枚,所以《Linux常用命令梳理》系列仅依照个人目前掌握的知识,对一部分命令进行梳理,目的是为了对之前学到的知识进行巩固。当然了,如果机缘巧合被大家看到了,也欢迎各位评论指正,谢谢!

Linux命令包含了文件管理、文档编辑、文件传输、磁盘管理、磁盘维护、网络通讯、系统管理、系统设置、备份压缩、设备管理等方面的命令。这一篇呢,先梳理一下文件管理部分的常用命令。

一、文件管理

  cat命令:concatenate,连接文件并打印到标准输出设备上

  语法:cat [参数] 文件名

  参数:-n  从1开始对每一行进行编号

     -b  从1开始对每一行进行编号,空白行除外

     -s  将连续2行以上的空白行用1行空白行代替

     -v  用^和M-符号,LFD和TAB除外

     -E  在每行结尾显示$

     -T  将TAB显示为^I

     -A  相当于-vET

     -e  相当于-vE

     -t  相当于-vT

  扩展:使用cat命令创建文件,语法:cat > 文件名,运行后要求用户在终端上输入文件内容,输入完成后按下CTRL+D结束。

 [root@centos- ~]# ls
anaconda-ks.cfg hello.sh initial-setup-ks.cfg
[root@centos- ~]# cat > abc
test
abc
hello
world
[root@centos- ~]# ls
abc anaconda-ks.cfg hello.sh initial-setup-ks.cfg
[root@centos- ~]# cat abc
test
abc
hello
world
[root@centos- ~]#

  注意第3行和第10行代码的区别:第3行cat > abc表示创建一个之前不存在的文件abc,第10行cat abc表示将已存在的abc文件的内容打印出来。 

  chmod命令:change mode,变更文件权限

  语法:chmod [参数] [mode] 文件名

  参数:-c  文件权限确实已经更改,才显示其更改动作

     -f  抑制大多数错误消息

     -v  显示文件权限变更的详细过程

     -R  以递归方式对当前目录下对所有文件及子目录进行权限变更

  mode:权限设定参数来自 [ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+

  ugoa:u表示文件拥有者,g表示和文件拥有者在同一群组的用户,o表示其他用户,a表示所有用户

  -+=:-表示取消权限,+表示增加权限,=表示唯一设定权限

  rwxXst:r表示可读,w表示可写,x表示可执行,Xst待解释

  0-7:rwx权限也可以用数字表示,其中r = 4,w = 2,x = 1,如chmod a=rwx 文件名和chmod 777 文件名两个命令的效果是等价的,都是为所有用户赋予rwx权限。

  扩展:可通过ls -l命令或简写的ll命令查看文件权限。

 [root@centos- ~]# ll
total
-rw-r--r--. root root Jul : abc
-rw-------. root root Aug anaconda-ks.cfg
-rwxr-xr-x. root root Jul : hello.sh
-rw-r--r--. root root Aug initial-setup-ks.cfg
[root@centos- ~]# chmod hello.sh
[root@centos- ~]# ls -l
total
-rw-r--r--. root root Jul : abc
-rw-------. root root Aug anaconda-ks.cfg
-rwxrwxrwx. root root Jul : hello.sh
-rw-r--r--. root root Aug initial-setup-ks.cfg
[root@centos- ~]#

  可以从第5行和第12行代码看出hello.sh文件的权限已经发生变更。

  cmp命令:compare,以逐个字节对比的方式比较两个文件是否有差异,如果没有,则不显示任何信息;如果有,则会显示出第一个不同之处的位置

  语法:cmp [参数] [第一个文件] [第二个文件]

  参数:-b  打印出不同之处的字节

     -i  指定一个数字,表示跳过的字节数

     -l  输出所有不同之处的字节序号以及两个文件该位置对应的字符

     -n  指定一个数字,表示限制比较的字节数,即只比较前n个字节

     -s  抑制比较结果的输出,即不显示两个文件之间的差异

  cp命令:copy,复制文件或目录

  语法:cp [参数] [源文件] [目标文件]

     cp [参数] [源文件1] [源文件2] [源文件3] ... [目录]

  参数:-f  覆盖已经存在的目标文件而不给出提示

     -i  与-f相反,覆盖已经存在的目标文件前进行询问提示(常用)

     -p  连同文件的属性(权限、用户、修改时间)一起复制过去(备份常用)

     -r  递归复制,用于目录复制,将目录下的所有文件及子目录进行复制(常用)

     -d  复制时保留链接

     -l  不复制文件,只生成链接文件

     -a  相当于-dr

  注意:当有多个源文件时,则目标文件必须是一个已经存在的目录。

  rm命令:remove,删除文件或目录

  语法:rm [参数] 文件名或目录

  参数:-r  将目录及目录中的内容删除(删除目录的必要参数)

     -f  直接删除,没有提示信息(使用需谨慎!!!)

     -i  删除前提示确认信息 

 [root@centos- ~]# rm
rm: cannot remove ‘’: Is a directory
[root@centos- ~]# ls
abc abc.bak abc.ln anaconda-ks.cfg bca cba hello.sh initial-setup-ks.cfg
[root@centos- ~]# rm -f abc.bak
[root@centos- ~]# ls
abc anaconda-ks.cfg bca cba hello.sh initial-setup-ks.cfg
[root@centos- ~]#

  mv命令:move,移动文件或目录位置,或对文件或目录重命名

  语法:mv [参数] 源文件 目标文件

     mv [参数] [源文件1] [源文件2] [源文件3] ... [目录]

  参数:-i  覆盖已有目标前给出提示信息

     -f  直接覆盖已有目标,不给出任何提示

mv file1 file2 将file1重命名为file2
mv file directory 将file移动到directiry下
mv dir1 dir2

若dir2不存在,则将dir1改名为dir2;

若dir2存在,则将dir1移动到dir2

Linux常用命令梳理——文件管理(一)的更多相关文章

  1. 【记录】linux 常用命令梳理

    命令梳理 下载文件 [wget 是一个十分常用命令行下载工具,多数Linux发行版本都默认包含这个工具] wget -c [zip路径等] #断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载 ...

  2. Linux常用命令总结——文件管理

    Linux中的目录 路径:也就是linux中的目录(文件夹)有绝对路径和相对路径 根目录:/ 用户主目录(home directory):位于/home目录下,用户登录时 工作目录(working d ...

  3. Linux学习笔记之四————Linux常用命令之文件管理

    Linux命令——文件管理相关命令 <1>查看文件信息:ls ls是英文单词list的简写,其功能为列出目录的内容,是用户最常用的命令之一,它类似于DOS下的dir命令. Linux文件或 ...

  4. Linux常用命令及文件管理

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. 目录解释: .代表此层目录:  .. 代表父目录:-代表前一个目录:~代表是家目录. (1)ls命令(显示) -a:列出所有文 ...

  5. linux常用命令之文件管理

    LS ls:list directory contents 默认情况 默认情况下显示的是mtime 选项 -a 列出全部文件及目录包括隐藏的 -l 列出详细信息,包括文件类型.权限.节点.owner. ...

  6. Linux 常用命令 , 其他名 , 文件管理

    Linux 常用命令 , 其他名 , 文件管理 一丶Linux常用的指令 1. bsystemctl stop firewalld #关闭防火墙 2. iptables -F #清空防火墙规则 3. ...

  7. linux常用命令的介绍

    本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...

  8. linux——常用命令与脚本

    linux常用命令 --文件管理pwd --查看当前目录cd --切换当前目录ls --列出当前目录下的所有文件touch --创建文件mkdir --建立目录rmdir --删除空目录rm --删除 ...

  9. linux 常用命令及技巧

    linux 常用命令及技巧 linux 常用命令及技巧:linux 常用命令总结: 一. 通用命令: 1. date :print or set the system date and time 2. ...

随机推荐

  1. Linux man学习

    5 man    man是manual的简写,Linux求助的工具    man  命令行,如 man  date 在我学习鸟哥私房菜的时候,也称man为man page  手册页入口:1 用户指令2 ...

  2. python中字符串格式化的两种方法

    知识点汇总;1-字符串格式化输出方法一: % 1-print('名字是 %s,年龄是%s' % (name ,age)) 2- %s ---字符串-----相当于执行了str() 3- (name , ...

  3. python字符串与列表的相互转化

    一.字符串转化为列表 a = 'abcabcabca' a = a.split('c') print(a) #['ab', 'ab', 'ab', 'a'] 二.列表转化为字符串 li = [&quo ...

  4. Kendo UI for jQuery使用教程:支持Web浏览器

    [Kendo UI for jQuery最新试用版下载] Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support ...

  5. linux 环境下安装MySQL5.7(yum)

    安装环境: CentOS7 64位,MySQL5.7 原文链接:https://blog.csdn.net/xyang81/article/details/51759200 1. 配置yum源 在My ...

  6. 【NOIP2016提高A组集训第13场11.11】最大匹配

    题目 mhy12345学习了二分图匹配,二分图是一种特殊的图,其中的点可以分到两个集合中,使得相同的集合中的点两两没有连边. 图的"匹配"是指这个图的一个边集,里面的边两两不存在公 ...

  7. vue和electron做的聊天应用表情包处理

    表情包库: https://apps.timwhitlock.info/emoji/tables/unicode <template> <div @click.stop> &l ...

  8. linux-history-ps1-1

    1.串行端口终端(/dev/ttySn) 串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备.计算机把每个串行端口都看作是一个字符设备.有段时间这些串行端口设备 ...

  9. 【深入理解CLR】2:细谈值类型的装箱和拆箱

    装箱 总所周知,值类型是比引用类型更“轻型”的一种类型,因为它们不作为对象在托管堆中分配,不会被垃圾回收,也不通过指针来引用.但在许多情况下,都需要获取对值类型的一个实例的引用.例如,假定要创建一个A ...

  10. Anaconda安装PyTorch

    Anaconda是一个Python语言管理器,支持安装基于Python的开发包,例如tensorflow.Pytorch等,以及各种基于Python的IDE. https://www.jb51.net ...