网上看一个两小时突击linux的教程,就想补充一下linux的知识。想着一天抽出俩小时立马就能学完呢,结果乱七八糟的事情拖了四五天,实际完成某项任务的时间超出预期完成任务的两部不止。好了,"牢骚到此为止"。

1、linux用户

  • 超级用户 root 只有一个,home目录在 /root 下,拥有最高权限。
  • 普通用户 user 可以多个,home目录在 /home/user 下,拥有部分权限。

  添加用户  useradd  user1

  切换用户  su - user1  (加中间"-"的好处在于切换后就能进入用户home目录,也可以不加)

  修改密码  passwd [uname] (不加uname,默认是当前用户)

2、环境变量PATH

  我理解为windows下环境变量path,作用也相同

  执行某命令时,会从PATH包含的目录和当前的目录寻找该命令,如果没找到,则会提示 command not found ;执行命令也可以用相对路径或绝对路径的方式执行,比如执行  ../test 、 /usr/local/mycmd/test

  临时修改PATH: export PATH=$PATH:/usr/local/mycmd/test ,这种方式只对本次登录有效

  永久修改PATh:在 /etc/profile 文件的末尾添加  export PATH=$PATH:/usr/local/mycmd/test  ,系统重启后对所有用户永久生效;在  ~/.bashrc 文件的末尾添加 export PATH=$PATH:/usr/local/mycmd/test  ,重新打开一个终端窗口或执行 source ~/.bashrc 命令只对当前用户永久生效

  

3、linux文件权限

  

  1. -rwxrwxr-x 一共10位,第一位表示文件类型,"-"是文件,"d"是文件夹,其余位表示三种用户权限,前三位owner的权限,中三位属于owner用户组的权限,后三位其他用户的权限。

    修改文件的权限  chmod filepath ,linux文件有三种权限  r 读  、  w 写 、   x 执行 ,每种权限用一位二进制表示,用户权限的表示就用三位二进制,转成八进制就是[7,0]

    文件夹的 r权限表示可以 ls , w权限表示可以touch创建文件, x权限表示可以cd进入

    rwx = 4+2+1=7,故 chmod 777 filepath修改的权限为 rwxrwxrwx。

  2.  liuchw liuchw 前者表示owner,后者表示group(用户组)

4、文件的操作

   创建一个文件  touch helloworld.c

  创建目录   mkdir directory

  查看文本文件内容  cat helloworld.c

  查看文件类型  file helloworld.c (文件的类型只取决于文件内容,和文件后缀无关)

  删除文件   rm -rf helloworld.c

  编辑文件   vim  helloworld.c

  复制文件   mv ./helloworld.c ./cp/helloworld_copy.c

  复制整个目录   /home/ (如果目录 /home/2 不存在,会自动创建)

  重命名文件和复制文件一样,放在同一个目录中即可

5、 打包压缩命令

  打包(多个文件合并为一个文件,文件总体大小不会改变)

    tar cf mytar.tar file1 file2 ... fileN

  压缩 

     tar cjf mytar.tar file1 file2 ... fileN

  其中 c 表示create创建,f表示file文件,j表示某种压缩算法

  查看打包压缩文件内容  tar tvf mytar.tar

  解压 tar xf mytar.tar -C dir 将压缩文件解压到目录中,参数-C必须大写

6、 搜索命令

  我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:

  • which 查看可执行文件的位置
  • whereis 查看文件的位置
  • locate 配合数据库查看文件位置
  • find 实际搜寻硬盘查询文件名称

   which 命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。如: which pwd 、 which which

   whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。 但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。 如: whereis ls

   locate 命令让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。如: locate pwd 、 locate /etc/sh 搜索 /etc目录下以sh开头的文件。

   find 命令在目录结构中搜索文件,并执行指定的操作。命令格式: find pathname -options [-print -exec -ok ...]

  1. find dir [-type [f|d]] -name "xxx"  -type表示文件类型,文件或是目录;-name表示文件名称,可以使用通配符*

  2. ind dir -name "*.c" -exec wc -l {} \;   -exec表示运行其后面的命令;wc全名word count, wc -l  统计文件行数;{}指一条匹配结果;\; 转义分号

  如:查找并删除n天以前的文件,  find . -type f mtime +n -exec rm {} \;

  3.  find dir -name "*.c" >> count ; wc -l count ; rm count ;  >> 将执行结果导入后面的文件。这句代码是查找出.c文件并将结果写入count文件,然后执行后面的命令。

  4. find dir -name "*.c" | wc -l  | 管道命令,把上一个命令的执行结果作为下一个命令的输入

  

  

【linux学习笔记】的更多相关文章

  1. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  2. linux学习笔记2-linux的常用命令

    第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...

  3. Linux学习笔记(一)2015.4.13

    研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...

  4. 20160127 linux 学习笔记

    Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于 ...

  5. linux —— 学习笔记(汇总)

    笔记目录:一.系统知识 和 基本概念                    二.常用操作                   三.系统管理(内存.设备.服务等管理)                   ...

  6. Linux学习笔记-林耐斯Notes-Linux就该这么学

    Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbir ...

  7. Linux~学习笔记目录索引

    回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...

  8. deepin linux学习笔记(四)进不去图形界面怎么办?

    目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...

  9. deepin linux 学习笔记(二)——文本编辑器

    目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...

  10. deepin linux学习笔记

    目录 deepin linux学习笔记 前言 linux常用命令 ls 显示文件夹内容 cd 切换当前目录 pwd 查看当前工作目录 mkdir 新建文件夹 rm 删除文件或文件夹 mv 移动文件 c ...

随机推荐

  1. SuperSocket 扩展你的 Logger

    SuperSocket 允许你自定义你的 Logger. 例如,你如果想要把你的业务操作日志保存到一个独立的地方,你仅需要在log4net配置文件中添加一个新的 logger 并为这个 logger ...

  2. P1108 分解质因数

    题目描述 给你一个正整数 \(n\) ,请给 \(n\) 分解质因数,并按照样例输出的格式输出对应的结果. 输入格式 输入包含一个正整数 \(n (2 \le n \le 10^9)\) . 输出格式 ...

  3. js 操作字符串方法记录

    var str="helloworld"; 这三个方法如果只传一个参数默认截取到最后..将截取的字符返回,对原字符串没有任何改变 slice(star,end)//从索引star开 ...

  4. Django入门4--admin

    python3选择__str__(self),python2选择__unicode__(self):

  5. There is no PasswordEncoder mapped for the id "null"的解决办法

    今日在SpringBoot项目中使用 Spring Security ,登录时发现报500错,报错信息如下: There is no PasswordEncoder mapped for the id ...

  6. H3C配置路由器作为TFTP客户端

  7. multipart/form-data与application/octet-stream的区别、application/x-www-form-urlencoded

    情景再现: 上传文件到.net(wcf)后台时,总是上传不成功,后台要求Content-Type是application/octet-stream,我使用multipart/form-data方式,c ...

  8. linux 在 open 时复制设备

    管理存取控制的另一个技术是创建设备的不同的私有拷贝, 根据打开它的进程. 明显地, 这只当设备没有绑定到一个硬件实体时有可能; scull 是一个这样的"软件"设备 的例子. /d ...

  9. vue-learning:30 - component - 组件实例的引用方式

    组件实例的引用方式 ref / $refs $root $parent $children 扩展查找任意组件实例的方法 在vue开发的项目中,通常会以一棵嵌套的组件树的形式来组织项目. 都存在着一个根 ...

  10. 开包即食的教程带你浅尝最新开源的C# Web引擎 Blazor

    在今年年初, 恰逢新春佳节临近的时候. 微软给全球的C#开发者们, 着实的送上了一分惊喜. 微软正式开源Blazor ,将.NET带回到浏览器. 这个小惊喜, 迅速的在dotnet开发者中间传开了. ...