Linux学习笔记 (二)常用linux命令
一、命令行语法:
命令字 [选项] [参数]
注意:Linux中对命令是区分大小写的。
二、获取命令帮助:
1、help命令:help xxx,shell内部指令,用来获取linux内部命令。例如:help help。
2、'--help'选项:xxx --help 获取命令的帮助信息。 ls --help。
3、man命令:man xxx 以全屏方式显示帮助手册,按q退出。 man ls 。
4、info命令:info xxx 以更详细的方式获取帮助手册 按q退出。 info ls。
三、文件目录操作命令:
1、ls:显示目录中的内容
常用选项:
-l:以长格式显示文件和目录,快捷显示ll
-a:显示所有子目录和文件的信息
-d:显示目录本身的属性
-R:显示指定目录及所有的子目录
-i:显示I节点号。(硬盘上的文件编号,唯一)
通配符:
?:匹配文件中的某一个字符。
*:匹配文件中的任意多个字符。
2、cd:改变工作目录
相对路径:相对当前工作目录的路径。
a、一个.开头:当前路径
b、两个..开头:上一级目录
c、一个~开头:宿主目录
d、一个/老调皮:根目录
e、-上一次访问的目录
绝对路径:从系统的根目录开始的路径/home/xxx。
cd 按两下tab会有意外惊喜喔!
3、pwd:显示当前目录
4、du:统计目录
-a:统计磁盘空间占用时所有的文件。
-h:将以个性化的方式统计结果,显示文件单位
-s:只统计每个参数所占用控件总的大小。
5、mkdir:创建新的目录
-p:创建嵌套多层目录
mkdir -p aaa/bbb/ccc 一次创建3层目录,不带-p会报错。
四、文件操作命令
1、touch:创建新文件。
语法:touch 文件列表
如果文件不存在则创建一个空文件,如果文件存在则更新文件创建时间,可以一次创建多个文件。
例如:touch file1.txt file2.txt //同时创建2个文件
2、cp:复制文件或目录。
语法:cp [options] 源位置 目标位置
选项:
-f:强制复制。
-i:提醒用户确认。
-p:保持属性不变。
-r:赋值所有文件及子目录。
-d:如果文件是链接文件,则复制链接属性
-a:相当于pdr,可以将最后修改时间和原来的时间保持一致
例如:cp -r mydir mydir_back
3、mv:改名或移动文件或目录。
mv file1.txt file_first.txt :将file1.txt重命名为file_first.txt
mv file1.txt /home/file2.txt:将file1.txt移动到/home/file2.txt
4、rm:删除文件或目录。
语法 rm [options] name
选项:
-f:直接强制删除。
-i:提醒用户确认。
-r:删除整个目录及目录下的所有文件。
例如:
rm file1.txt //删除文件
rm -r mydir //删除文件夹
注意:默认时,rm 不会删除目录。使用--recursive(-r 或-R)选项可删除每个给定的目录,以及其下所有的内容。
5、file:查看文件类型。
语法:file 文件路径
例如:file /usr/bin/ls
6、ln:建立快捷方式。
语法:ln [-s] 源文件或目录链接文件或目标目录
快捷方式主要分为硬链接和软链接。
硬链接:
1)是指具有指向相同索引块中的不同的两个文件,具有相同的I节点和Block块,只是名称不同。
2)修改任意文件,另一个都会改变
3)不能对目录创建硬链接,也不能跨越分区创建硬链接文件。
4)删除任意一个硬链接文件,只要另一个还存在,文件即存在。
5)创建硬链接后,只能通过i节点来识别。
创建一个硬链接: ls /home/a.txt /tmp/b.txt //为home/a.txt创建一个硬链接。
软链接:(类似Windows中的快捷方式)
1)软连接有自己的i节点和block块,但是数据块中只保存原文件的文件名和I节点号,并没有实际的文件数据。
2)lrwxrwxrwx:软连接的权限都为lrwxrwxrwx。不是正真的文件权限。
3)修改任意文件,另一个都会改变。
4)删除原文件,链接不能使用。(和硬链接最大的区别就在这里)
5)建立软连接后,如果不使用绝对路径,软连接和原文件必须在同一个目录中,如果不在同一个目录中,必须使用绝对路径。
符号链接(软链接):需要ln添加-s选项。
例如:ln -s /home/zhengcheng/mydir/file1.txt /home/zhengcheng/桌面 //为file1.txt 在桌面创建软链接
五、文件搜索命令
1、locate:文件搜索(相对于find搜索的效率比较高)
语法:locate 文件名
注意:使用locate无法搜索到新的文件,因为locate是到/var/lib/mlocate数据库进行搜索。新文件未添加到数据库中,所以无法搜索到
必须使用updatedb命令,手动更新数据库,才能搜索到新添加的文件。
优点:搜索的效率比较高,缺点是只能按文件名进行搜索,搜索方式比较单一。
当在/tmp/a,txt中创建了文件后,发现使用locate无法搜索的该文件,原因是locate的配置文件中对/tmp目录进行了排除。
locate配置文件 /etc/updatedb.conf
其中有4个配置属性:
PRUNE_BIND_MOUNTS = "yes" //表示下面所有设置都生效,无效为no。
PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset debugfs devpts ecryptfs exofs fuse fuse.sshfs fusectl gfs gfs2 hugetlbfs inotifyfs iso9660 jffs2 lustre mqueue ncpfs nfs nfs4 nfsd pipefs proc ramfs rootfs rpc_pipefs securityfs selinuxfs sfs sockfs sysfs tmpfs ubifs udf usbfs" //排除的文件系统
PRUNENAMES = ".git .hg .svn" //排除某一类文件
PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache/ccache
/var/lib/yum/yumdb /var/spool/cups /var/spool/squid /var/tmp" //排除某些文件夹
2、find:查找文件或目录。
find相对于前面两种方式来说要更加强大。参数也更多。
语法:find [查找范围][查找条件表达式]
条件参数:
-name【-iname】:按名称查找(不区分大小写查找)
-size:按大小查找
-user【-nouser】:按文件所有者查找【非所有者文件:一般不经过用户的文件,有两种情况,一种情况是内核自动创建的文件没有所有者,一般在内存中;第二种是外部文件,由外部系统创建的文件。其他情况则都属于垃圾文件。】
-type:按文件类型查找
例:find /var/log –size 25k //搜索25k的文件。+25:大于25k的文件,-25:小于25k的文件。
注意:linux中搜索必须带单位,k为小写,M为大写。默认为硬盘扇区单位。
-mtime:按修改文件时间;
例:find /var/log –mtime 10 //查找10天当天修改的文件。(+10:为10天前修改的文件,-10为10天内修改的文件)。
-atime:文件访问时间;
-ctime:改变文件属性时间;
-inum:根据i节点搜索。
例如:
find /root -name
a.txt //表示从root目录开始搜索,文件为a.txt的文件。
find / -name
"*.c" //从根目录开始,通过通配符进行搜索,搜索以.c结尾的文件,使用通配符时,必须使用””引起来。
注意:在使用find命令时,应该避免大范围的搜索,会导致文件搜索的非常缓慢,因为根目录下文件太多, 会非常消耗系统资源。
Linux中的通配符:
*:表示匹配任意多个字符。
?:表示匹配单个字符。
[]:表示匹配括号中的单个字符。
find的复杂搜索:
find
/etc –size +20k –a –size -50k //搜索20k到50k之间的文件
-a:and 逻辑与,两个条件都满足。
-o:or 逻辑或,两个条件满足一个即可。
find
/etc -size +20k -a -size -50k -exec ls -lh {} \;
//搜索20k到50k之间的文,并显示详细信息
//-exec
/-ok 命令{} \;对搜索结果进行查询 –exec
{} \; 为固定格式,表示在前面命令的搜索结果上在做操作。
3、which:查找命令文件的位置以及他的别名
语法:which 命令
例如:which ls
alias ls='ls
--color=auto' --设置自动着色
/usr/bin/ls
4、whereis:搜索命令所在的位置和帮助文档所在的位置。不能搜索普通文件。
-b:只查找可执行文件。
-m:只查找帮助文件。
例:whereis ls
ls: /usr/bin/ls
/usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz 查找到ls命令所在的目录和帮助文档所在的目录。
注意:不论使用whereis和which都无法搜索到cd命令。原因是因为cd命令为linux和内置shell指令。
4、grep:在文件内容中进行搜索。搜索文件内容。可以和正则表达式匹配使用。
语法:grep [选项] 查找条件 目标文件
-i:忽略大小写查找
-v:反转查找,查找不在范围内的行
例如:grep -i hello
file1.txt 查找hello在file1.txt中的位置,并忽略大小写
六、文件内容操作命令
1、cat:显示文件内容
cat b.txt
//显示b.txt文件内容
2、echo:打印内容
echo aaaa
//显示aaaa字符串
echo aaaa =>
b.txt //将aaaa添加到b.txt文件中,如果文件不存在则创建文件
3、more/less:分页显示文件内容。
语法 more/less 文件名
space:向下翻页
b:向上翻页
h:帮助文档、
4、vi、vim:文档编辑工具(后面会有专门的介绍)
七、环境变量
echo $PATH:在linux中,所有的命令都必须使用绝对路径方式才能执行,而环境变量表示linux执行命令所查找的目录,避免输入繁琐的目录名,提高输入效率。
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:
//环境变量采用:分隔。
Linux常用命令查询:
常用Linux的20个命令:http://www.oschina.net/translate/useful-linux-commands-for-newbies
命令查询:http://www.jb51.net/linux/
Linux学习笔记 (二)常用linux命令的更多相关文章
- Linux学习笔记二:tar命令使用
tar命令详解 tar命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的 ...
- Linux学习笔记(二) 文件管理
了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...
- Docker学习笔记二(linux下安装Docker)
Docker学习笔记二(linux下安装Docker) 1.在线安装linux Docker 这种方式首先要保证linux 环境下可以上网,当然,小编是在自己的电脑上安装了虚拟机,在虚拟机上安装了,l ...
- kvm虚拟化学习笔记(二)之linux kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- linux初级学习笔记二:linux操作系统及常用命令,文件的创建与删除和命名规则,命令行展开以及linux中部分目录的作用!(视频序号:02_3)
本节学习的命令:tree,mkdir,rmdir,touch,stat,rm 本节学习的技能:Linux中主要的目录作用以及特殊的目录文件: 文件的命名规则,命令行展开: 文件的创建与删除: Linu ...
- Linux学习笔记:常用命令grep、iconv、cp、mv、rm
本篇记录一些近期常用的命令. 一.grep过滤 grep过滤 不包含某些字符串 cat test.txt | grep -v '.jpg' 过滤jpg结尾的图片 cat test.txt | grep ...
- LInux学习笔记之常用命令
以下命令主要是平时用到的命令,对于一些经常用到的,就收集资料,归纳一下. 指令目录: 1.yum命令: 2.wget命令: 3.tar命令: 4../configure,make,make insta ...
- linux学习笔记二:三种网络配置
本文引用自:https://www.linuxidc.com/Linux/2017-05/144370.htm [linux公社] VMware为我们提供了三种网络工作模式,它们分别是:Bridged ...
- linux 学习笔记二
笔记二 命令行格式 command [-options] parameter1 parameter2 ... 命令 选项 参数(1) 参数(2) options 和 参数 不是必须的 帮助命令 man ...
- linux学习笔记3:linux的网络配置,rpm包,shell以及samba服务器的使用和安装
1.linux下的shell<linux命令.编辑器和shell编程> (1)shell种类有很多,常用的有三种,在linux可以通过ls -l /bin/*sh 来显示所有已安装的she ...
随机推荐
- jdk,tomcat,mvn,android,php,linux等的初始化配置
jdk配置:系统变量->新建->变量名:JAVA_HOME 变量值:c:\jdk1.6.0_21(jdk安装目录:C:\Program Files (x86)\Java\jdk1.7.0_ ...
- python任意编码转utf8或者unicode
# encoding: utf-8 ''' Created on 2015年2月8日 @author: 张鹏程 aprial@163.com @copyright: 版权所有, 尊重劳动成功, 转载与 ...
- UVALIVE 2431 Binary Stirling Numbers
转自别人的博客.这里记录一下 这题是定义如下的一个数: S(0, 0) = 1; S(n, 0) = 0 for n > 0;S(0, m) = 0 for m > 0; S(n, m) ...
- Mac下Lua环境搭建
lua源文件下载安装 到官网安装了lua包,我安装的是 lua-5.3.1 解压之后,命令行cd进入到src目录下,输入make macosx 完成后cd ..到上一层目录, 输入sudo make ...
- 使用windos电脑模拟搭建集群(三)实现全网监控
这里我们采用小米监控 open-falcon 这是server端就是 192.168.5.200 这台主机, agent就是负责将数据提交到 server端 agent整个集群所有主机都 ...
- .apache.commons.io 源代码学习(一)
java的初学者,准备通读各种高水平源代码,提升能力. 为了避免自己的惰性,写博客. 版本:2.5 开发平台:netbeans. 今天是第一天,网上先看个例子:http://www.importnew ...
- hdu 5145(莫队算法+逆元)
NPY and girls Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- JDK7集合框架源码阅读(六) HashSet与LinkedHashSet
基于版本jdk1.7.0_80 java.util.HashSet java.util.LinkedHashSet 代码如下 HashSet,312行 /* * Copyright (c) 1997, ...
- HDU 6300.Triangle Partition-三角形-水题 (2018 Multi-University Training Contest 1 1003)
6300.Triangle Partition 这个题就是输出组成三角形的点的下标. 因为任意三点不共线,所以任意三点就可以组成三角形,直接排个序然后输出就可以了. 讲道理,没看懂官方题解说的啥... ...
- 51nod 1062 序列中最大的数【打表】
1062 序列中最大的数 题目来源: Ural 1079 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 有这样一个序列a: a[0] = 0 a[ ...