Linux基本命令


Linux系统下的文件类型、权限、所属用户与组

  • 文件类型

    - (文件)

    d(目录) ->类似windows系统下的文件夹

    l (链接) ->类似windows系统下的快捷方式

  • 文件权限分为三种

    1.可读r(read)

    2.可写w(write)

    3.可执行x(针对于脚本文件,比如shell脚本)

    ps. 特殊字符 - 表示没有任何权限

    pps. 还可以用数字表示权限

      r  w  x

      22  21   20

      4  2  1

  • 文件的归属

    1.拥有者(u)

    2.属于组(g)

    3.其他人(o)

  • 举例

  -rw-rw-r--

  	十个字符代表不同的含义
- rw- rw- r-- (用数字表示为:664)
拥有者 属于组 其他人 第一个字符 - 表示的是文件的类型
后面九个字符,分为三组,表示此文件针对不同用户的权限关系 beifeng beifeng
↓ ↓
文件拥有者 文件所属组 4096/65
如果是文件,则数字为文件大小 ->65
如果是目录,则数字为目录下文件数量 ->4096 sep 28 12:15
创建时间

权限命令chmod、文件所属用户和组改变命令

  • 权限命令chmod
  查询命令使用方法
man cmdName 自动补全命令行 【Tab键】 设置文件对不同用户的权限
# chmod (change mode)
eg: -rw-r--r-- 1 zhaozhuang staff 16 Feb 3 21:58 readme.txt
需求:对于同组用户来说,可读可写;对于其他用户来说,既不可读也不可写。
# chmod g+w readme.txt
# chmod o-r readme.txt
数字形式修改会原来的权限:
-rw-rw---- 1 zhaozhuang staff 16 Feb 3 21:58 readme.txt
# chmod 644 readme.txt 如果要针对一个目录设置权限,但目录中有很多文件,且需要同样的权限设置

-R, --recursive 递归
change files and directories recursively
# chmod -R 目录路径 文件拷贝
cp 文件名称 要拷贝到的目录
  • 改变文件拥有者和所属组
  改变拥有者
# chown 要改变的拥有者用户名 文件所在全路径 改变所属组
# chgrp 要改变的所属组名称 文件所在全路径 同时改变拥有者和所属组,并一条命令解决
# chown 要改变的拥有者用户名:要改变的所属组名 文件所在全路径

文件的两种创建方式、vi常用的快捷键及查看文件常见的几种方式

文件的两种创建方式

  $ touch 文件名+后缀

  $ vi/vim 文件名+后缀
  对文件的内容进行追加
$ echo "追加的内容" >> 追加的文件名

vi常用快捷键

  在vi查看模式下
dd:删除光标所在的行的内容
ZZ:保存文件内容
x :删除光标处的字符
o :表示在光标的下一行进行插入

查看文件常见的几种方式

  查看文件的全部内容
cat 文件名+后缀 ->(一般文件内容比较少的时候用)
more 文件名+后缀 ->(文件内容比较多的时候用,会对文件内容进行翻页查看) 查看文件末尾的内容
tail [-f] 文件名+后缀 ->(通常与-f连用,适合于查看服务实时动态日志信息)
如果要看指定末尾行数的内容,在f前面加数值即可
eg. tail -200f install.log 查看文件开头的内容
head 文件名+后缀 (适用于查看文件格式、内容模板样式)

文件的拷贝、移动、重命名及删除

  创建目录
& mkdir 目录名称 拷贝文件
拷贝一个文件到一个目录中去
$ cp 文件名称 目录名称
拷贝一个文件的内容到一个新文件中去
$ cp 文件名称 新文件名称 拷贝目录
$ cp -r 目录名称 新目录名称
如果不加-r递归的话,就会报cp:omitting directory的错误
 移动、重命名文件和目录
重命名 ->(当源文件和目标文件在同一个目录下时)
$ mv 源文件名称 新的名称
eg. $ mv test-dir/ sub-dir
$ mv 源目录名称 新的名称
eg. $ mv test.txt test.log
移动 ->(当源文件和目标文件不再同一个目录下时)
$ mv 源文件名称 要移动的目录
eg. $ mv
$ mv 源文件名称 要移动内容的文件名称 ->>(将源文件中的内容移动到了新的文件中去)
  文件的删除
$ rmdir 目录路径 ->(只能删除空的目录)
$ rm -rf 目录名称路径 ->(可以删除不是empty的目录,所以要慎用,一定要确定路径为绝对路径)
-f, --force (强制)
ignore nonexistent files and arguments, never prompt
忽视不存在的文件和参数,不会提示

目录的递归创建和删除以及如何创建软链接和硬链接

  创建多级目录
$ mkdir -p 多级目录
-p, --parents
no error if existing, make parent directories as needed
不存在错误时,根据需要创建父级目录
  软链接(soft link)
硬连接(hard link)
区别:在删除链接时,是否删除源文件 创建一个软链接
$ ln -s file/dir linkName
eg.ln -s readme.txt rm.txt
lrwxrwxrwx. 1 beifeng beifeng 10 2月 5 13:55 rm.txt -> readme.txt 创建一个硬链接
$ ln file/dir linkName
eg. $ ln www.ibeifeng.access.log bf-log
-rw-rw-r--. 2 beifeng beifeng 0 2月 5 13:59 bf-log 使用场景:
/opt/hadoop/conf /opt/hbase/conf
core-site.xml ln -> core-site.xml
hdfs-site.xml ln -> hdfs-site.xml
当源文件做出修改时 链接文件也会修改
所以链接的作用之一:保持一致性
  文件搜索
能记得文件名称时
$ find ~/ -name fileName
模糊记得文件名称
$ find ~/ -name 文件名称开头的几个字母\*

【Linux基础总结】Linux基本命令的更多相关文章

  1. Linux基础之常用基本命令备忘

    Linux基础之常用基本命令备忘 PWD   查询当前所在Linux上的位置 /         根目录 CD(change directory)切换目录  语法 CD /(注意添加空格)   LS ...

  2. Linux基础与Linux下C语言编程基础

    Linux基础 1 Linux命令 如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 登录Linux后,我们就可以在#或$符后面去输入命令,有 ...

  3. SLAM+语音机器人DIY系列:(一)Linux基础——1.Linux简介

    摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...

  4. SLAM+语音机器人DIY系列:(一)Linux基础——3.Linux命令行基础操作

    摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...

  5. 【转】Linux基础与Linux下C语言编程基础

    原文:https://www.cnblogs.com/huyufeng/p/4841232.html ------------------------------------------------- ...

  6. Linux基础-兄弟连Linux

    Linux基础增强与辅助知识梳理... ------------ Linux学习基础需要学习那些知识 学习Linux对于程序开发的好处 怎样开始学习Linux Linux的学习方法参考 Linux系统 ...

  7. Linux基础:Linux环境下安装JDK

    title: Linux基础:JDK的及环境变量配置 author: Enjoyitlife.top date: 2019-10-09 20:50:36 tags: Linux JDK categor ...

  8. Linux基础系列—Linux体系结构和Linux内核结构

    /** ****************************************************************************** * @author    暴走的小 ...

  9. 【Linux基础】Linux常用命令汇总

    3-1文件目录操作命令(cd pwd mkdir rmdir rm) 绝对路径:由根目录(/)开始写起的文件名或目录名称, 例如 /home/dmtsai/.bashrc: 相对路径:相对于目前路径的 ...

  10. Linux基础之Linux简介

    Linux(英语发音:/ˈlɪnəks/ lin-əks)是一种自由和开放源代码的类UNIX操作系统. Linux简介 Linux(英语发音:/ˈlɪnəks/ lin-əks)是一种自由和开放源代码 ...

随机推荐

  1. tortoise 设置beyond Compare比较工具

    1.桌面右击tortoiseSVN->setting->Diff Viewer面板,选择external,选中beyond Compare路径

  2. 5. class--extends

    ES5: function article(x,y){ this.x = x; this.y = y; } article.prototype.say = function() { return (t ...

  3. 基于MySQL Binlog的Elasticsearch数据同步实践

    一.为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品.订单等数据的多维度检索. 使用 Elasticsearch 存储业务数 ...

  4. pytorch seq2seq闲聊机器人

    cut_sentence.py """ 实现句子的分词 注意点: 1. 实现单个字分词 2. 实现按照词语分词 2.1 加载词典 3. 使用停用词 "" ...

  5. MySQL server has gone away(在执行sql的时候,莫名的报错)

    原文:https://cenalulu.github.io/mysql/mysql-has-gone-away/ MySQL Server has gone away报错原因汇总分析 原因1. MyS ...

  6. 进制之间转换——day_01

    一.计算机文件大小单位 b = bit 位(比特) B = Byte 字节 1B = 8b #一个字节等于8位 简写 1Byte = 8 bit 1KB = 1024B 1MB = 1024KB 1G ...

  7. c++库 c语言接口

    //code in add.cxx #include "add.h" int sample::method() { cout<<"method is call ...

  8. 日志分析工具ELK(五)

    八.Kibana实践 选择绝对时间和相对时间 搜索 还可以添加相关信息 自动刷新页面时间,也可以关闭 创建图像,可视化 编辑Markdown,创建一个值班联系表 值班联系表 保存 再创建一个饼图;查看 ...

  9. Latex-0-latex2word

    Latex-0-latex2word LatexXeLaTex Latex 转 Word 虽然latex 格式很方便,能够满足绝大部分的排版要求,但是在与人沟通的时候不可避免地需要用到其他格式文件,比 ...

  10. Floyd-Warshall算法正确性证明

    以下所有讨论,都是基于有向无负权回路的图上的.因为这一性质,任何最短路径都不会含有环,所以也不讨论路径中包含环的情形!并且为避免混淆,将"最短路径"称为权值最小的路径,将路径经过的 ...