zoukankan      html  css  js  c++  java
  • 一、linux基础命令

    一、 常用系统工作命令

    1.echo 命令

    ​ echo命令用于在终端输出字符串或者变量提取后的值
    ​ echo $SHELL

    2.date命令

    ​ date命令用于显示及设置系统的时间或者日期

    参数 			作用
    %t 			跳格[Tab键]
    %H 			小时(00~23)
    %I 			小时(00~12)
    %M 			分钟(00~59)
    %S 			秒(00~59)
    %j 			今年中的第几天
    

    查看系统当前时间:
    root@Nutssss:~# date
    2019年 07月 19日 星期五 18:28:10 CST
    按照“年-月-日 小时:分钟:秒输出:

    root@Nutssss:~# date "+%Y-%m-%d %H:%M:%S"
    2019-07-19 18:30:24
    

    3.reboot命令

    ​ reboot命令用于重启系统,其格式为reboot。

    ​ 由于重启计算机这种操作会涉及硬件资源的管理权限,因此默认只能使用root管理员来重启,其命令如下:

    4.poweroff命令

    poweroff命令用于关闭系统,其格式为poweroff。

    该命令与reboot命令相同,都会涉及硬件资源的管理权限,因此默认只有root管理员才可以关闭电脑,其命令如下:

    5.wget命令

    ​ wget命令用于在终端下载网络文件

    参数 			作用
    -b 			后台下载模式
    -P 			下载到指定目录
    -t 			最大尝试次数
    -c 			断点续传
    -p 			下载页面内所有资源,包括图片、视频等
    -r 			递归下载
    

    5.ps命令

    ​ ps命令用于查看系统中的进程状态

    参数 	作用
    -a 	显示所有进程(包括其他用户的进程)
    -u 	用户以及其他详细信息
    -x 	显示没有控制终端的进程
    

    Linux系统中时刻运行着许多进程,如果能够合理地管理它们,则可以优化系统的性能。在Linux系统中,有5种常见的进程状态,分别为运行、中断、不可中断、僵死与停止,其各自含义如下所示。

    R(运行):进程正在运行或在运行队列中等待。
    
    S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该   状态。
    
    D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。
    
    Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。
    
    T(停止):进程收到停止信号后停止运行。
    

    7.top命令

    ​ top命令用于动态监视进程活动与系统负载等信息

    第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。
    
    第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
    
    第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“97.1 id”意味着有97.1%的CPU处理器资源处于空闲。
    
    第4行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
    
    第5行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。
    

    8.pidof命令

    ​ pidof命令用于查询某个指定服务进程的pid值

    9.kill命令

    ​ kill命令用于终止某个指定PID的服务进程

    10.killall命令

    ​ killall命令用于终止某个指定名称的服务所对应的全部进程

    二、系统状态检测命令

    1.ifconfig命令

    ​ ifconfig命令用于获取网卡配置与网络状态等信息

    2.uname命令

    ​ uname命令用于查看系统内核与系统版本等信息,格式为“uname [-a]”

    3.uptime命令

    ​ uptime用于查看系统的负载信息,格式为uptime。

    ​ uptime命令真的很棒,它可以显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟、5分钟、15分钟内的压力情况(下面加粗的信息部分);负载值越低越好,尽量不要长期超过1,在生产环境中不要超过5。

    4.free命令

    ​ free用于显示当前系统中内存的使用量信息,格式为“free [-h]”。

    ​ 内存总量 已用量 可用量 进程共享的内存量 磁盘缓存的内存量 缓存的内存量
    ​ toral used free shared buffers cached

    5.who命令

    ​ who用于查看当前登入主机的用户终端信息,格式为“who [参数]”。

    ​ 这三个简单的字母可以快速显示出所有正在登录本机的用户的名称以及他们正在开启的终端信息。

    6.last命令

    ​ last命令用于查看所有系统的登录记录

    ​ 使用last命令可以查看本机的登录记录。但是,由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而判断系统有无被恶意入侵!

    7.history命令

    ​ history命令用于显示历史执行过的命令

    ​ history -c 清空历史命令

    三、工作目录切换命令

    1.pwd命令

    ​ pwd命令用于显示用户当前所处的工作目录

    2.cd命令

    ​ cd命令用于切换工作路径

    ​ 返回到上一次的目录:cd -

    ​ 快速切换到用户的家目录:cd ~

    ​ 上一级目录:cd ..

    3.ls命令

    ​ ls命令用于显示目录中的文件信息

    -a			参数看到全部文件(包括隐藏文件)
    
    -l			参数可以查看文件的属性、大小等详细信息。
    
    -d			参数查看目录属性信息
    

    四、文本文件编辑命令

    1.cat命令

    ​ cat命令用于查看纯文本文件(内容较少的)

    -n 			显示行数(空行也编号)
    -s			显示行数(多个空行算一个编号)
    -b 			显示行数(空行不编号)
    -E			每行结束处显示$符号
    -T			将TAB字符显示为 ^I符号
    -v			使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
    
    -e			等价于”-vE”组合
    -t			等价于”-vT”组合
    -A			等价于 -vET组合
    –help 		显示帮助信息
    –version 	显示版本信息
    

    2.more命令

    ​ more命令用于查看纯文本文件(内容较多的

    3.head命令

    ​ head命令用于查看纯文本文档的前N行

    ​ head -n 20 initial-steup-ks.cfg

    4.tail命令

    ​ tail命令用于查看纯文本文档的后N行或持续刷新内容

    -f 							循环读取
    -q 							不显示处理信息
    -v 							显示详细的处理信息
    -c							<数目> 显示的字节数
    -n							<行数> 显示文件的尾部 n 行内容
    --pid=PID 					与-f合用,表示在进程ID,PID死掉之后结束
    -q, --quiet, --silent 		从不输出给出文件名的首部
     -s, --sleep-interval=S 	与-f合用,表示在每次反复的间隔休眠S秒 
    

    5.tr命令

    ​ tr命令用于替换文本文件中的字符

    ​ [root@linuxprobe ~]# cat anaconda-ks.cfg | tr [a-z] [A-Z]

    6.wc命令

    ​ wc命令用于统计指定文本的行数、字数、字节数

    参数 			作用
    -l 			只显示行数
    -w 			只显示单词数
    -c 			只显示字节数
    

    7.stat命令

    ​ stat命令用于查看文件的具体存储信息和时间等信息

    8.cut命令

    ​ cut命令用于按“列”提取文本字符

    cut命令用于按“列”提取文本字符,格式为“cut [参数] 文本”。

    ​ 在Linux系统中,如何准确地提取出最想要的数据,这也是我们应该重点学习的内容。一般而言,按基于“行”的方式来提取数据是比较简单的,只需要设置好要搜索的关键词即可。但是如果按列搜索,不仅要使用-f参数来设置需要看的列数,还需要使用-d参数来设置间隔符号。passwd在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔的,接下来我们使用下述命令尝试提取出passwd文件中的用户名信息,即提取以冒号(:)为间隔符号的第一列内容:

    [root@linuxprobe ~]# head -n 2 /etc/passwd
    
    [root@linuxprobe ~]# cut -d: -f1 /etc/passwd
    

    9.diff命令

    ​ diff命令用于比较多个文本文件的差异

    [root@linuxprobe ~]# cat diff_A.txt
    [root@linuxprobe ~]# cat diff_B.txt
    

    ​ 接下来使用diff --brief命令显示比较后的结果,判断文件是否相同:

    [root@linuxprobe ~]# diff --brief diff_A.txt diff_B.txt
    Files diff_A.txt and diff_B.txt differ]()
    

    ​ -c参数的diff命令来描述文件内容具体的不同:

    [root@linuxprobe ~]# diff -c diff_A.txt diff_B.txt
    

    五、文件目录管理命令

    1.touch命令

    ​ touch命令用于创建空白文件或设置文件的时间

    ​ 参数 作用

    -a 	仅修改“读取时间”(atime)
    -m 	仅修改“修改时间”(mtime)
    -d 	同时修改atime与mtime
    

    2.mkdir命令

    ​ mkdir命令用于创建空白的目录

    ​ -p 参数来递归创建出具有嵌套叠层关系的文件目录

    3.cp命令

    ​ cp命令用于复制文件或目录

    1. 如果目标文件是目录,则会把源文件复制到该目录中;
    2. 如果目标文件也是普通文件,则会询问是否要覆盖它;
    3. 如果目标文件不存在,则执行正常的复制操作。
    参数 			作用
    -p 			保留原始文件的属性
    -d 			若对象为“链接文件”,则保留该“链接文件”的属性
    -r 			递归持续复制(用于目录)
    -i 			若目标文件存在则询问是否覆盖
    -a 			相当于-pdr(p、d、r为上述参数)
    

    4.mv命令

    ​ mv命令用于剪切文件或将文件重命名

     -i	 		若指定目录已有同名文件,则先询问是否覆盖旧文件;
     -f	 		在mv操作要覆盖某已有的目标文件时不给任何指示;
    

    5.rm命令

    ​ rm命令用于删除文件或目录

    -i 		删除前逐一询问确认。
    -f 		即使原档案属性设为唯读,亦直接删除,无需逐一确认。
    -r 		将目录及以下之档案亦逐一删除。
    

    6.dd命令

    ​ dd命令用于按照指定大小和个数的数据块来复制文件或转换文件

    参数 			作用
    if 			输入的文件名称
    of 			输出的文件名称
    bs 			设置每个“块”的大小
    count 		设置要复制“块”的个数
    

    7.file命令

    ​ file命令用于查看文件的类型

    六、打包压缩与搜索命令

    1.tar命令

    ​ tar命令用于对文件进行打包压缩或解压

    参数 			作用
    -c 			创建压缩文件
    -x 			解开压缩文件
    -t 			查看压缩包内有哪些文件
    -z 			用Gzip压缩或解压
    -j 			用bzip2压缩或解压
    -v 			显示压缩或解压的过程
    -f 			目标文件名
    -p 			保留原始的权限与属性
    -P 			使用绝对路径来压缩
    -C 			指定解压到的目录
    

    ​ 常用:

    tar -xzvf 		压缩包名称.tar.gz
    tar -xzvf 		压缩包名称.tar.gz
    

    2.grep命令

    ​ grep命令用于在文本中执行关键词搜索,并显示匹配的结果

    参数 	作用
    -b 			将可执行文件(binary)当作文本文件(text)来搜索
    -c 			仅显示找到的行数
    -i 			忽略大小写
    -n 			显示行号
    -v 			反向选择——仅列出没有“关键词”的行。
    

    3.find命令

    ​ find命令用于按照指定条件来查找文件

    参数 	作用
    -name 					匹配名称
    -perm 					匹配权限(mode为完全匹配,-mode为包含即可)
    -user 					匹配所有者
    -group 					匹配所有组
    -mtime -n +n 			匹配修改内容的时间(-n指n天以内,+n指n天以前)
    -atime -n +n 			匹配访问文件的时间(-n指n天以内,+n指n天以前)
    -ctime -n +n 			匹配修  改文件权限的时间(-n指n天以内,+n指n天以前)
    -nouser 				匹配无所有者的文件
    -nogroup 				匹配无所有组的文件
    -newer f1 !f2 			匹配比文件f1新但比f2旧的文件
    --type b/d/c/p/l/f 		匹配文件类型(后面的字幕字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
    -size 					匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件)
    -prune 					忽略某个目录
    -exec …… {}; 			后面可跟用于进一步处理搜索结果的命令
    
  • 相关阅读:
    with一个对象,自动触发__enter__方法
    SQLAlchemy-Utils
    SQLAlchemy
    wtforms
    Python数据库连接池DBUtils(基于pymysql模块连接数据库)
    VMWare安装linux centos,安装中文输入法
    HttpServletRequest和ServletRequest的区别
    Java序列化
    mybatis循环取序列,值相同问题处理
    利用jdk将wsdl生成java代码
  • 原文地址:https://www.cnblogs.com/dyanbk/p/11236715.html
Copyright © 2011-2022 走看看