【linux学习笔记】
网上看一个两小时突击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学习笔记】的更多相关文章
- Linux 学习笔记
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...
- linux学习笔记2-linux的常用命令
第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...
- Linux学习笔记(一)2015.4.13
研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...
- 20160127 linux 学习笔记
Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于 ...
- linux —— 学习笔记(汇总)
笔记目录:一.系统知识 和 基本概念 二.常用操作 三.系统管理(内存.设备.服务等管理) ...
- Linux学习笔记-林耐斯Notes-Linux就该这么学
Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbir ...
- Linux~学习笔记目录索引
回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...
- deepin linux学习笔记(四)进不去图形界面怎么办?
目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...
- deepin linux 学习笔记(二)——文本编辑器
目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...
- deepin linux学习笔记
目录 deepin linux学习笔记 前言 linux常用命令 ls 显示文件夹内容 cd 切换当前目录 pwd 查看当前工作目录 mkdir 新建文件夹 rm 删除文件或文件夹 mv 移动文件 c ...
随机推荐
- 手动实现如何从H264流中提取SPS/PPS信息
1,代码比较简单,可以直接用了.流的第一个NALU一定是SPS void get_sps_pps_nalu(uint8_t *data, int len, std::vector<uint8_t ...
- ubuntu14.04 dnsmasq搭建本地名字服务器
1 修改dnsmasq配置文件/etc/dnsmasq.conf 在/etc/dnsmasq.conf文件底部增加 #++++++++++++++++++++++++++++++++++++++++ ...
- Can you find it?——[二分查找]
Description Give you three sequences of numbers A, B, C, then we give you a number X. Now you need t ...
- tensorflow在文本处理中的使用——Word2Vec预测
代码来源于:tensorflow机器学习实战指南(曾益强 译,2017年9月)——第七章:自然语言处理 代码地址:https://github.com/nfmcclure/tensorflow-coo ...
- GitHub上传项目到远程库
写文章 GitHub上传项目到远程库 GitHub上传项目到远程库 今天把想把文件托管到GitHub仓库,但是执行一系列的命令以后,刷新GitHub网站还是没有任何更新.后来终于找到原因,原来 ...
- TOJ4587:抓苹果(DP)
传送门:抓苹果 dp(i,j) = max(dp(i-1,j-1),dp(i-1,j))+当i这分钟时能否刚好移动到这棵树下. 初始化是对不移动的情况下. 代码 #include<bits/st ...
- Luogu P4173 残缺的字符串-FFT在字符串匹配中的应用
P4173 残缺的字符串 FFT在字符串匹配中的应用. 能解决大概这种问题: 给定长度为\(m\)的A串,长度为\(n\)的B串.问A串在B串中的匹配数 我们设一个函数(下标从\(0\)开始) \(C ...
- Java基础系列8——IO流超详细总结
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 在初学Java时,I ...
- Maven 运行 tomcat:run 时出现 Unable to compile class for JSP...
近来无事便去看了看神奇的 Maven , 但写第一个 Hello,World 就非常不友好的怼给我一个 500, 很是郁闷; 开发环境: JDK1.8, Maven 3.5 项目目录: \maven_ ...
- 找不到 javax.servlet.http.HttpServletResponse 和 javax.servlet.http.HttpServletRequest 问题解决
时隔3个月,我又回来了!在做完毕设之后,由于对此过程中学到的一些东西疏于整理,所以当再次打开我的project时有些手足无措,以至于出现一些问题也要解决好半天,我知错! 今天的问题是: 开始搜到的解决 ...