新手Linux命令-2
Posted Dayo Yan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新手Linux命令-2相关的知识,希望对你有一定的参考价值。
- df(disk free磁盘空闲空间):列出已挂载磁盘的使用情况。格式:df [选项] [文件或目录] (df命令读取的范围主要是在Super block内的信息(主要针对整个文件系统),显示结果的速度非常快速)。
选项 | 作用 |
-h | 人性化(GB、MB、KB等格式)显示信息 |
-i | 不用硬盘容量,而以inode的数量来显示 |
-a | 列出所有的文件系统,包括系统特有的/proc(一个虚拟文件系统,放置的数据在内存当中,本身不占用任何硬盘空间)等文件系统 |
-T | 连同该分区的文件系统名称(例如ext3)也列出 |
Filesystem:代表该文件系统是在哪个分区(因此列出了设备名称) | 1K-blocks:说明下面的数字单位是1KB。可利用-h或-m参数来改变显示单位 | Used:已使用的磁盘空间 | Available:可用的磁盘空间大小 | Use%:磁盘使用率。若超过90%,须注意一下 | Mounted on:磁盘挂载的目录所在(挂载点) |
df -hT:将系统内的文件系统及名称列出,容量结果以易读的格式显示。
查看/etc下可用的磁盘容量,并以易读的容量格式显示出来,且会自动分析目录或文件所在的分区。
- ifconfig(interface config网卡配置):获取网卡配置与网络状态等信息。格式:ifconfig [网络设备] [参数]。
- uname(unix name):查看系统内核与系统版本等信息。格式:uname [选项]。
一般会固定搭配上-a参数来完整查看当前系统的内核名称、主机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统名称等信息
- who(谁):查看当前登入主机的用户终端信息。
登陆的用户名 | 终端设备 | 登陆到系统的时间 |
root | :0 | 2017-08-24 17:52 (:0) |
root | pts/0 | 2017-08-24 17:52 (:0) |
who命令显示信息的解析: <https://zhidao.baidu.com/question/148128945.html>
<https://zhidao.baidu.com/question/339930341.html>
w:Show who is logged on and what they are doing.
<http://blog.csdn.net/u012110719/article/details/42298237>
whoami(我是谁):print effective(有效) userid
who am i
id(identity身份): print real and effective user and group IDs
- last(最近的):查看用户的最近登录记录(/var/log/wtmp)。
(本机的登录记录信息是以日志文件的形式保存在系统中的数据内容,骇客可轻易进行内容篡改,不能单凭以该命令输出的信息而判断系统有无被恶意入侵)
lastlog:显示系统中所有用户最近一次的登录信息(/var/log/lastlog)。
- history(历史):显示历史执行过(近1000条)的命令(它是一个函数 history(3),不是一条普通的命令)。格式:history [选项] [参数]。
history n:列出最近使用的n条历史命令
可以使用"!编码数字"的方式来重复执行某一次的命令
历史命令会被保存到用户家目录中的".bash_history"文件中(cat ~/.bash_history)。
history -c:清空该用户在本机中执行过的linux命令历史记录信息
- sosreport:用于收集系统配置并诊断信息后输出结论文档。
当Linux系统出现故障需要联系红帽厂商或其他技术支持时,大多数时候都要先使用这个SOS功能来简单收集计算机的运行状态和服务配置信息,以便让技术支持公司能够通过远程就解决了一些小问题,又或者让他们能对复杂问题能提前有些了解。
(资料压缩文件以及校验码)
- pwd(print working directory输出当前工作目录):显示当前所处的工作目录。格式:pwd [选项]。
- cd(change directory改变目录):切换工作路径。格式:cd [目录名称]。
仅输入cd:代表cd ~
cd -:返回到上一次所处的目录
cd ..:返回上一层目录(注意空格)
(根目录"/"的上层目录(..)与根目录本身(.)是同一个目录)
cd ~:切换到当前用户的家目录,亦或使用"cd ~username"则可以切换到其他用户的家目录
绝对路径:一定由根目录"/"写起,如/var/spool/mail(建议使用)。
相对路径:对于目前工作目录的路径。不是由根目录"/"写起,如由/var/spool/mail要到/var/spool/cron目录,可以写成cd ../cron。
- ls(list directory contents列出目录的内容):显示目录中的文件信息。格式:ls [选项] [文件]。
ls -a:查看全部文件(包括隐藏文件),Linux系统中以点(.)开头的文件均代表隐藏文件,一般大多会是系统服务文件。(蓝色字体显示的为目录(文件夹))
ls -l(ll):查看文件的属性、大小(长数据串)等详细信息
详解请见 <http://blog.csdn.net/sjzs5590/article/details/8254527>
<http://baijiahao.baidu.com/s?id=1582175688777520981&wfr=spider&for=pc>
<http://blog.csdn.net/xinlongabc/article/details/46801641>
ls -al:查看所有文件的详细信息
ls -li:查看文件的详细信息,并显示索引结点号inode(每个文件都会占用一个inode)
ls -ld:仅查看目录本身的属性信息(不列出目录内的文件数据)
ls -R:连同子目录内容一起列出来,等于该目录下的所有文件都会显示出来
-F:根据文件、目录等信息给予附加数据结构
-h:将文件容量以人类较易读的方式(例如GB、KB等)列出来
--time={atime,ctime}:输出访问时间(atime)或改变权限属性时间(ctime)(ls -l命令默认显示文件的修改时间(mtime))
- cat(concatenate连续):查看纯文本文件(较短的、比较精简的文本内容,不可翻页,连续显示)。格式:cat [选项] [文件]。
cat -n:查看文本内容时顺便打印出行号(空白行也会有行号(-b参数针对空白行则不打印行号))
tac (反向列示):文件的最后一行到了屏幕的第一行了,也就是说文件的第一行就到了最后一行去了。
nl (添加行号打印):
选项:
-b : 指定行号指定的方式,主要有两种:
-b a : 表示不论是否为空,也同样列出行号(类似cat -n)
-b t : 如果有空行,空的那行不列出行号(默认值)
-n : 列出行号表示的方法,主要有三种:
-n ln : 行号在屏幕最左方显示;
-n rn : 行号在自己字段的最右方显示,且不加0;
-n rz : 行号在自己字段的最右方显示,且加0;
-w : 行号字段占用的位数。
- more:查看纯文本文件(较长的文本内容,可翻页)。格式:more [选项] 文件
(会提示已经阅读了百分之多少)。
回车键:下滚一行 | 空格键:下翻一页 | b:往回翻页(此回翻页操作只对文件有用,对管道无用) | /关键词:向下查询关键字 | :f(冒号+f):立刻显示出文件名以及目前显示的行数 | q:离开 |
less:more命令的加强版,可向前翻页,界面和操作与man命令类似(man命令调用less来显示说明文件的内容)
- head(头):查看纯文本文档的前n行(默认显示前10行)。格式:head [选项] [文件]。
选项 | 作用 |
-n | 后面接数字,代表显示文件前几行的内容 |
-c nK | 后面接容量(如2K),代表显示文件前nKB的内容 |
- tail(尾):查看纯文本文档的后n行(默认显示后10行)。格式:tail [选项] [文件] 。
选项 | 作用 |
-n | 后面接数字,代表显示文件后几行的内容 |
-c nK | 后面接容量(如2K),代表显示文件末尾nKB的内容 |
tali -f:持续刷新一个文件的内容(可用于实时看到最新日志文件)(ctrl+c离开)
- watch(观察):以周期性的方式执行给定的指令,指令输出以全屏方式显示。格式:watch [选项] [参数]。
选项 | 作用 |
-n | 指定指令执行的间隔时间(秒) |
-d | 高亮显示指令输出信息不同之处 |
-t | 不显示标题 |
参数:需要周期性执行的指令
- od(octal dump八进制转储):查看特殊格式的文件(非纯文本文件查看)。格式:od [选项] [文件]。
选项 | 作用 |
-t a | 默认字符 |
-t c | ASCII字符 |
-t o | 八进制 |
-t d | 十进制 |
-t x | 十六进制 |
-t f | 浮点数 |
- tr(translate转化):替换文本文件中的字符。格式:tr [原始字符] [目标字符]。
(先使用cat命令读取待处理的文本内容,然后通过管道符"|"把这些数据传递给tr命令做替换操作)小写字母全部转换为大写:
tr -d [目标字符]:删除信息当中的目标字符
- wc(word count字数统计):统计指定文本的行数、字数、字节数等文本内容。格式:wc [选项] 文本
选项 | 作用 |
-l | 只显示行数 |
-w | 只显示单词数 |
-c | 只显示字节数 |
(passwd是用于保存系统帐户信息的文件,可使用命令wc -l /etc/passwd统计当前系统中有多少个用户)
- sort(排序):将文件按照默认语言的顺序规则进行排序,并将排序结果标准输出。格式:sort [选项] 文件名或标准输入。(对于系统语言为英语而言,小写字母优先于大写字母显示,即认为小写字母\'a\'是大于大写字母\'A的\')
选项 | 作用 |
-f | 忽略大小写的差异 |
-b | 忽略每行最前面的空格符部分 |
-n | 依照"纯数字"的大小排序(默认是以文字类型来排序的) |
-r | 反向排序 |
-t | 设置分隔符(默认以tab键分隔) |
-k | 以分隔的第几个区间来进行排序 |
-u | 相同的数据中,仅出现一行代表(相当于uniq命令) |
cat /etc/passwd | sort -t \':\' -k 3 : 以:作为分隔符,对第三列进行排序
- uniq(unique独一的):忽略文件中的重复行,一般与sort命令配合管道符结合使用。格式:uniq [选项] 文件名或标准输入。
参数 | 作用 |
-i | 忽略大小写字符 |
-c | 进行计数处理 |
last | cut -d \' \' -f 1 | sort | uniq : 使用last命令将用户的登入记录列出;再使用cut命令以空格为间隔符提取第一列内容;接着使用sort命令根据第一个数据进行排序;最后通过uniq命令仅列出一行代表,并进行计数处理。
- stat(status状态):查看文件的具体存储信息和时间等信息。格式:stat 文件名称。
- netstat(network status网络状态):查看网络系统的状态信息。格式:netstat [选项]。
选项 | 作用 |
-a | 显示所有连接中的套接字(netstat命令默认不显示LISTENI监听状态相关) |
-t | 仅显示tcp传输协议的连接状况 |
-u | 仅显示udp传输协议的连接状况 |
-l | 仅显示处于监听状态的服务器套接字 |
-n | 使用ip地址(数字numeric)表示,不使用域名显示 |
- ping:测试主机之间网络的连通性。格式:ping [选项] 目的主机。
选项 | 作用 |
-c | 规定完成要求回应的次数(ping命令默认一直持续) |
-i | 指定收发信息的间隔时间 |
-W(大写) | 定义等待超时时间 |
- cut(切割):按"列"来提取文本字符(以"行"为单位)。格式:cut [选项] 文本。
-d:设置间隔符号(要与-f参数一起使用) | -f:设置需要看的列数(第几段) |
cut -d : -f 1 /etc/passwd : 提取passwd文件中的用户名信息)
(cut -d : -f 1,2 /etc/passwd:提取第1,2列)
统计当前系统中有多少个用户(使用通配符"|"和wc -l命令查看行数)
- diff(difference不同):比较多个文本文件的差异。格式:diff [选项] 文件
--brief:仅确认两个文件是否不同 | -c:详细比较多个文件的差异之处 |
- file(文件):查看文件的类型。格式:file 文件名。
- touch(触摸):创建空白文件与设置文件的各种时间。格式:touch [选项] [文件]
选项 | 作用 |
-a | 仅修改"访问时间"(atime) |
-m | 仅修改"更改时间"(mtime) |
-d | 同时修改atime与mtime |
Linux中的文件有三种时间(Linux一切皆文件(目录文件、设备文件、链接文件、普通/文本文件等),文件之间只区分类型,而不区分后缀)(Linux中没有文件创建时间的概念
来自 <https://www.zhihu.com/question/21071680> ):
修改时间(mtime):内容修改时间(不包括权限的)(modify time) | 更改时间(ctime):更改权限与属性的时间(change time) | 读取时间(atime):读取文件内容的时间(access time) |
(ls -l命令默认显示文件的修改时间(mtime))
- mkdir(make directory创建目录):创建空白的文件夹。格式:mkdir [选项] 目录
mkdir -p [目录]:递归创建出具有嵌套叠层关系的文件目录
rmdir:删除空目录,rmdir -p [目录]:连同上层的空目录也一起删除
- cp(copy复制):复制文件或目录。格式:cp [选项] 源文件 目标文件
复制命令的三种情况:
- 目标对象是一个目录(目录名尾部须加上正斜线/),会将源文件复制到该目录中
- 目标对象也是一个文件,会询问是否覆盖
- 目标对象不存在,将会复制源文件并修改为目标文件的名称(可用作重命名)
选项 | 作用 |
-p | 保留原始文件的属性,而非使用默认属性(备份常用) |
-d | 若对象为"链接文件",则保留该"链接文件"的属性 |
-r | 递归持续复制(用于目录) |
-i | 若目标文件存在则询问是否覆盖(默认执行-i参数) |
-a | 相当于-pdr(p,d,r为上述的参数) |
-f | 强制(force)复制,若目标文件已存在直接覆盖 |
(不同身份者执行cp命令可能会有不同的结果产生,这里以root身份为例)
(复制行为cp会复制执行者(本例中:root)的属性与权限。默认条件中,cp的源文件与目的文件的权限是不同的,目的文件的所有者通常是命令操作者本身)
- mv(move移动):移动文件(剪切)或改名。格式:mv [选项] 源文件 [目标路径|目标文件名]。
选项 | 作用 |
-i | DAY2Linux的常用命令以及挂载学习笔记 |