命令说明(混乱版)第一周
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了命令说明(混乱版)第一周相关的知识,希望对你有一定的参考价值。
命令
bc
是任意精度计算器语言 在linux下当计算器用
选项值
-i:强制进入交互式模式;
-l:定义使用的标准数学库
-w:对POSIX bc的扩展给出警告信息;
-q:不打印正常的GNU bc环境信息;
-v:显示指令版本信息;
-h:显示指令的帮助信息。
常用运算:
- 加法- 减法* 乘法/ 除法^ 指数% 余数
cat
链接文件并打印到标准输出设备上
type
用于显示指定命令的类型,判断给出的指令是内部还是外部
如果给出的恢复是 XX is a shell builtin 是内建命令
-a 显示 指令的信息。包括命令的别名
-t:输出“file”、“alias”或者“builtin”,分别表示给定的指令为“外部指令”、“命令别名”或者“内部指令”;
-p:如果给出的指令为外部指令,则显示其绝对路径;
init
#0 停机(千万不能把initdefault 设置为0)
#1 单用户模式
#2 多用户,没有 NFS(和级别3相似,会停止部分服务)
#3 完全多用户模式
#4 没有用到
#5 x11(Xwindow) 图形界面
#6 重新启动(千万不要把initdefault 设置为6)
chvt 跟init差不多
但是 init的 3 5 是直接切换。。而chvy 的35 是临时切换。并不会关闭。而且会占内存。请注意!
cd
用来切换工作目录的命令
cd ~ 进入用户的主目录
cd - 返回此目录之前所在的目录
cd .. 返回上级目录
cd ../..返回上两级目录
date
显示当前服务器内的时间。并且可以用此命令进行更改,,输出时间等。。
-s 可以进行修改时间 要加双引号
-d 显示字符串所指定的时间或日期 要加双引号
date -d “-1 day ”+"%m-%d" 显示的是按照系统时间的昨天日期
date -s "08:53" 吧现在服务器时间修改成 08:53分
date -f 读取文件中的时间。(最后会多显示出一行。大概是大概的创建时间)
字符串格式
%H 小时,24小时制(00~23)
%I 小时,12小时制(01~12)
%k 小时,24小时制(0~23)
%l 小时,12小时制(1~12)
%M 分钟(00~59)
%p 显示出AM或PM
%r 显示时间,12小时制(hh:mm:ss %p)
%s 从1970年1月1日00:00:00到目前经历的秒数
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss)
%X 显示时间的格式(%H:%M:%S)
%Z 显示时区,日期域(CST)
%a 星期的简称(Sun~Sat)
%A 星期的全称(Sunday~Saturday)
%h,%b 月的简称(Jan~Dec)
%B 月的全称(January~December)
%c 日期和时间(Tue Nov 20 14:12:58 2012)
%d 一个月的第几天(01~31)
%x,%D 日期(mm/dd/yy)
%j 一年的第几天(001~366)
%m 月份(01~12)
%w 一个星期的第几天(0代表星期天)
%W 一年的第几个星期(00~53,星期一为第一天)
%y 年的最后两个数字(1999则是99)
dd
可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
free
可是显示当前系统未使用和已使用的内存数目,还可以显示被内核使用的内存缓冲区
-b:以Byte为单位显示内存使用情况;
-k:以KB为单位显示内存使用情况;
-m:以MB为单位显示内存使用情况;
-s<间隔秒数>:持续观察内存使用状况;
-g 以GB为单位显示内存使用情况
-h 以详细的可读方式进行输出。
例:
[[email protected] /]$ free -h
total used free shared buff/cache available
Mem: 1.8G 225M 1.1G 10M 519M
halt 类似 init 1
使用使用该命令是关闭系统
halt -d 关闭系统 但不留下记录
halt -p 关闭系统并关闭电源
hexdump
是linux下 用来查看二进制文件,十六进制编码,但实际上它能查看任何文件,而不只限于二进制文件。
常用选项:
-b 将每个字节显示为8进制
-c 将每个字节显示为ASCII字符
-C 每个字节显示为16进制和相应的ASCII字符
-d 每两个字节显示为10进制
-o 每两个字节显示为8进制
-x 每两个字节显示为16进制
ls
用来显示目标列表 。使用率比较高
-a :显示所有文档和目录。
-A:显示除影藏文件“.”和“..”以外的所有文件列表;
-C:多列显示输出结果。这是默认选项; 但是没有颜色显示 比如文件夹为蓝色
-l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;;
-s:显示文件和目录的大小,以区块为单位;
lscpu
显示cpu相关信息 以及其缓存大小
lsblk
用于列出所有可用块设备的信息。并且还能显示他们之间的以来关系。
-a :显示所有设备
-b 以bytes方式显示设备大小
-f 显示文件系统信息
-m 显示权限信息
ldd (未证实)
用于 打印程序或者库文件所依赖的共享库列表
-v:详细信息模式,打印所有相关信息;
-u:打印未使用的直接依赖;
-d:执行重定位和报告任何丢失的对象;
-r:执行数据对象和函数的重定位,并且报告任何丢失的对象和函数;
ltrace (需要用yum 进行添加)
用于来跟踪进程调用库函数
-d 打印调试信息
-f 跟踪子进程。
-h 打印帮助信息。
-i 打印指令指针,当库调用时。
-l 只打印某个库中的调用。
strace
是一个集诊断、调试、统计与一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果来对应用进行分析,以达到解决问题或者是了解应用工作过程的目的。当然strace与专业的调试工具比如说gdb之类的是没法相比的,因为它不是一个专业的调试器。
-t 在输出中的每一行前加上时间信息.
-T 显示每一调用所耗的时间.
-x 以十六进制形式输出非标准字符串
-xx 所有字符串以十六进制形式输出
ip address(ip a) ifconfig ipconfig(windows)
都是用来查看本机ip地址的
ip
-V:显示指令版本信息;
-s:输出更详细的信息;
id
可以显示真实有效的用户ID 和组的ID
-g或--group 显示用户所属群组的ID。
-G或--groups 显示用户所属附加群组的ID。
-n或--name 显示用户,所属群组或附加群组的名称。
-r或--real 显示实际ID。
-u或--user 显示用户ID。
reboot
用于重启现在正在运行的操作系统
-d:重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有“-n”参数效果;
-f:强制重新开机,不调用shutdown指令的功能;
-i:在重开机之前,先关闭所有网络界面;
-n:重开机之前不检查是否有未结束的程序;
-w:仅做测试,并不真正将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。
pwd
以绝对路径的方式显示用户当前所在的工作目录
poweroff
关闭当前操作系统 (一般不会用到)
tty
命令用于显示终端机连接标准输入设备的名称
sha1sum /dev/sr0
用于验证和校验文本是否和下载或传输之前的数据一致
shutdown
也是一种系统关机命令
-c:当执行“shutdown -h 11:50”指令时,只要按+键就可以中断关机的指令;
-k:只是送出信息给所有用户,但不会实际关机;
-r:shutdown之后重新启动;
-h:将系统关机;
uname -r
用于打印当前系统相关信息(内核版本 硬件架构 主机名称等)
-a或--all:显示全部的信息;
-m或--machine:显示电脑类型;
-n或-nodename:显示在网络上的主机名称;
-r或--release:显示操作系统的发行编号;
-s或--sysname:显示操作系统名称;
who
用于显示对当前登陆系统的用户信息。 执行该命令可得知目前那些用户登陆了。
-u 显示闲置时间,若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串;
-q或--count:只显示登入系统的帐号名称和总人数;
enable
用语临时关闭或者激活指定的shell内部命令,若要执行的文件名与shell内建命令相同 可使用 enable -n 来关闭 内建命令,若不加-n现象,enable可重新启动关闭命令
-n:是查看有哪些被禁止的内建命令 如果 -n后面带命令 那是关闭 要分清
-a:显示所有激活的内部命令;
-f:从指定文件中读取内部命令。
Hash
系统初始hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命
令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解
释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找。
利用hash缓存表可大大提高命令的调用速率
hash常见用法
hash 显示hash缓存
hash –l 显示hash缓存,可作为输入使用
hash –p path name 将命令全路径path起别名为name
hash –t name 打印缓存中name的路径
hash –d name 清除name缓存
hash –r 清除缓存
screen命令
是有GNU开发用户命令行终端切换的自由软件 用户可以通过该软件同时链接多个本地或远程的命令行回话,并在其间自由切换 并且只要此命令本身没有终端 在其内部的会话都可以恢复 可以执行分离命令detach 在保证里面的程序正常运行的情况下让screen挂起(切到后台)
-A 将所有的视窗都调整为目前终端机的大小。
-d <作业名称> 将指定的screen作业离线。
-h <行数> 指定视窗的缓冲区行数。
-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称> 恢复离线的screen作业。
-R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s 指定建立新视窗时,所要执行的shell。
-S <作业名称> 指定screen作业的名称。
-v 显示版本信息。
-x 恢复之前离线的screen作业。
clock hwclock命令
是硬件时钟访问工具,可以显示当前时间。设置硬件时间。设置时间为系统时间等
设置时需要root权限
-s --hctosys 以硬件时钟为准,校正系统时钟
-w --systoch 以系统时钟为准,校正硬件时间
-r 读取硬件时间并打印 ,或者直接打命令也可以
-v 版本信息
echo命令
用于shell中打印shell变量的值,或者直接输出指定的字符串
-e 激活转义字符
a 发出警告声;
删除前一个字符;
c 最后不加上换行符号;
f 换行但光标仍旧停留在原来的位置;
换行且光标移至行首;
光标移至行首,但不换行;
插入tab;
v 与f相同;
插入字符;
alias命令
用来设置指令的别名,可以将一些较长的命令进行简化
-p:打印已经设置的命令别名
基本用法:
alias 新别名=‘原命令 -参数‘
unalias命令
用来取消别名
-a:取消所有别名
例:
unalias 别名 就可以取消了
man命令
是linux下的帮助指令。可以通过man指令查看linux中指令帮助 配置文件帮助等
-a 在所有man帮助手册中搜索
-f 等于于whats指令。显示给定关键字的简短描述信息
-P 指定内容时使用分页程序
-M指定man手册搜索的路径
help命令
help用语显示shell内部命令的帮助信息
要是外部命令只能使用man或者info命令查看
whatis 命令
再用catman -w命令创建的数据库中查找命令参数的指定的命令,系统调用等 whatis命令等同于使用man -f命令
man -f命令 显示给定关键字的简单信息描述
例:
[localhost.localdomain 14:30:48]$whatis cp
cp (1) - copy files and directories
cp (1p) - copy files
who 命令
用语显示登陆系统的用户信息。执行who可以得知目前有哪些用户登入系统,单独执行命令会列出登入账号,使用的终端机,登入的时间,何处登入 等
-H 显示各栏位的标题信息列
-u 显示闲置时间。若用户在一分钟之内进行动作 则会显示成.号 如果超过24小时没懂 则会显示 old
-q 只显示登陆系统账号名称和总人数
例:
[localhost.localdomain 14:38:34]$who -u
mage tty1 2018-07-21 11:03 00:09 1016
mage pts/0 2018-07-21 14:30 . 2882 (172.16.251.162)
whoami 命令
用于打印 当前有效的用户名称 想到与执行 id -un命令
[localhost.localdomain 14:42:44]$whoami
mage
which 查找外部命令路径
用于查找 并显示给定命令的绝对路径 which指令会在环境变量中$PATH设置目录里查找副歌条件的文件。
-n<文件名长度>:制定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名;
-p<文件名长度>:与-n参数相同,但此处的<文件名长度>包含了文件的路径;
-w:指定输出时栏位的宽度;
用法:
[[email protected] ~]# which pwd
/bin/pwd
whereis 命令
用来定位指导灵的二进制程序,源代码文件。
该命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b) man说明文件(参数 -m) 和源代码文件(参数-s)如果省略参数,则返回所有信息
-b:只查找二进制文件;
-B<目录>:只在设置的目录下查找二进制文件;
-f:不显示文件名前的路径名称;
-m:只查找说明文件;
-M<目录>:只在设置的目录下查找说明文件;
-s:只查找原始代码文件;
-S<目录>只在设置的目录下查找原始代码文件;
-u:查找不包含指定类型的文件。
用法
[localhost.localdomain 15:12:29]$whereis tomcat
tomcat:
说明tomcat没安装
[localhost.localdomain 15:13:22]$whereis screen
screen: /usr/bin/screen /usr/share/screen /usr/share/man/man1/screen.1.gz
screen 已经安装了。
ntpdate 命令
用来设置本地日期和时间,他从指定的每个服务器获得一些样本,并应用标准NTP时钟过滤器和选择算法来选择最好的样本。
并且想运行此命令你需要拥有root用户
-aKeyid 使用 Keyid 来认证全部数据包。
-b 通过调用 settimeofday 子例程来增加时钟的时间。
-d 指定调试方式。判断 ntpdate 命令会产生什么结果(不产生实际的结果)。结果再现在屏幕上。这个标志使用无特权的端口。
-eAuthenticationDelay 指定延迟认证处理的时间秒数。
-kKeyFile 当不使用缺省值 /etc/ntp.keys 文件时,为包含密钥的文件指定一个不同的名称。 请参阅文件KeyFile的描述。
-oVersion 当轮询它的发出数据包时,指定使用的 NTP 版本实现。 Version 的值可以是 1,2,3。缺省值是 3。
-pSamples 指定从每个服务器获取的样本的数目。 Samples 的值在 1 和 8 之间,并包括 1 和 8。它的缺省值是 4。
-s 指定日志操作 syslog 设施的使用,而不是使用标准输出。 当运行 ntpdate 命令和 cron命令时,它是很有用的。
-tTimeOut 指定等待响应的时间。给定 TimeOut 的值四舍五入为 0.2 秒的倍数。缺省值是 1 秒。
-u 指定使用无特权的端口发送数据包。 当在一个对特权端口的输入流量进行阻拦的防火墙后是很有益的, 并希望在防火墙之外和主机同步。防火墙是一个系统或者计算机,它控制从外网对专用网的访问。
wall命令
用于向系统当前所有打开的终端上输出信息。。通过wall命令可将信息发送给每位同意接收公众信息的终端机用户,若不给予其信息内容,则wall命令会从标准输入设备读取数据,然后再把所得到的数据传送给所有终端机用户。
用法
[localhost.localdomain 15:24:36]$wall this is
[localhost.localdomain 15:27:01]$
Broadcast message from [email protected] (pts/0) (Sat Jul 21 15:27:01 2018):
this is
rpm 命令
是rpm软件包的管理工具,让Linux易于安装,升级,间接提升了Linux的适用度。
-a:查询所有套件;
-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<套件档>或--erase<套件档>:删除指定的套件;
-f<文件>+:查询拥有指定文件的套件;
-h或--hash:套件安装时列出标记;
-i:显示套件的相关信息;
-i<套件档>或--install<套件档>:安装指定的套件档;
-l:显示套件的文件列表;
-p<套件档>+:查询指定的RPM套件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示套件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。
用法:
比如现在使用cento系统挂在了光盘。。
先用lsbkl 查找到光盘的路径
然后在光盘的 Packages中。使用rpm进行安装想要程序
timedatectl 命令
设置时间命令 同时也可以查看是去
使用该命令显示出来的英文大概是
1.Local time:当地时间
2.Universal time:时间时间
3.RTC time:RTC时间(实时时钟(Real-Time Clock)是PC主板上的晶振及相关电路组成的时钟电路的生成脉冲,RTC经过8254电路的变频产生一个频率较低一点的OS(系统)时钟TSC,系统时钟每一个cpu周期加一,每次系统时钟在系统初起时通过RTC初始化。8254本身工作也需要有自己的驱动时钟(PIT)。)
4.Time zone:时区
5.NTP enabled:NTP(网络时间协议{Network Time Protocol})启用
6.NTP synchronized:NTP同步
7.RTC in local TZ:RTC在当地TZ
8.DST active:DST的活性
list-timezones 列出所有的是去
set-local-rtc 将硬件时钟调整为本地时钟一致
list-timezones/XXXX 设置时区 (时区从 listtimezones中找)
runlevel 命令 (类似init)
linux操作系统自从开始启动至启动完毕需要经历几个不同的阶段,这几个阶段就叫做runlevel,同样,当linux操作系统关闭时也要经历另外几个不同的runlevel
在大多数的linux发行版本中,通常有8个runlevel:
0 停机
1 单用户模式
2 多用户,没有 NFS
3 完全多用户模式
4 没有用到
5 图形界面
6 重新启动
sosreport 命令
Sosreport命令可生成系统诊断报告,可以让能看懂的人掌握Linux系统的运行状态,
一般用于 购买了红帽售后公司所使用的。。其检查的东西。包括大量的底层信息等。
nano 命令
是一个字符终端的文本编辑器。比vi vim简单 某些linux发行版本就是默认的nano
-h, -? --help 显示此信息
+行,列 从所指列数与行数开始
-A --smarthome 启用智能 HOME 键
-B --backup 储存既有文件的备份
-C <目录> --backupdir=<目录> 用以储存独一备份文件的目录
-D --boldtext 用粗体替代颜色反转
-E --tabstospaces 将已输入的制表符转换为空白
-F --multibuffer 启用多重文件缓冲区功能
-H --historylog 记录与读取搜索/替换的历史字符串
-I --ignorercfiles 不要参考nanorc 文件
-K --rebindkeypad 修正数字键区按键混淆问题
-L --nonewlines 不要将换行加到文件末端
-N --noconvert 不要从 DOS/Mac 格式转换
-O --morespace 编辑时多使用一行
-Q <字符串> --quotestr=<字符串> 引用代表字符串
-R --restricted 限制模式
-S --smooth 按行滚动而不是半屏
-T <#列数> --tabsize=<#列数> 设定制表符宽度为 #列数
-U --quickblank 状态行快速闪动
-V --version 显示版本资讯并离开
-W --wordbounds 更正确地侦测单字边界
-Y <字符串> --syntax=<字符串> 用于加亮的语法定义
-c --const 持续显示游标位置
-d --rebinddelete 修正退格键/删除键混淆问题
-i --autoindent 自动缩进新行
-k --cut 从游标剪切至行尾
-l --nofollow 不要依照符号连结,而是覆盖
-m --mouse 启用鼠标功能
-o <目录> --operatingdir=<目录> 设定操作目录
-p --preserve 保留XON (^Q) 和XOFF (^S) 按键
-q --quiet 沉默忽略启动问题, 比如rc 文件错误
-r <#列数> --fill=<#列数> 设定折行宽度为 #列数
-s <程序> --speller=<程序> 启用替代的拼写检查程序
-t --tempfile 离开时自动储存,不要提示
-u --undo 允许通用撤销[试验性特性]
-v --view 查看(只读)模式
-w --nowrap 不要自动换行
-x --nohelp 不要显示辅助区
-z --suspend 启用暂停功能
-$ --softwrap 启用软换行
hostname命令
用于显示和设置系统的主机名,环境变量hostname也保存了当前的主机名,在使用hostname命令设置主机名后,系统并不会永久保存。想要永久保存。需要修改。/etc/hosts 和/etc/sysconfig/network的相关内容
-a:显示主机别名
-b:启动设置默认的主机名
-d:显示DNS域名;
-f:显示FQDN名称;
-i:显示主机的ip地址;
-s:显示短主机名称,在第一个点处截断;
-y:显示NIS域名。
用法:
[localhost.localdomain 19:26:19]#hostname
localhost.localdomain
passwd 命令
用于设置用户的认证信息,包括用户密码,密码过期时间等。系统管理员则能用他管理系统用户的密码,只有管理者可以指定用户名称,一般用户只能改变自己的密码
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
lsb_release 命令
是查询 linxu系统版本的命令是需要进行安装的
-v 显示版本信息。
-i 显示发行版的id。
-d 显示该发行版的描述信息。
-r 显示当前系统是发行版的具体版本号。
-c 发行版代号。
-a 显示上面的所有信息。
-h 显示帮助信息。
[localhost.localdomain 19:46:12]#lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.5.1804 (Core)
Release: 7.5.1804
Codename: Core
info命令
Linux下info格式的帮助指令
-d:添加包含info格式帮助文档的目录;
-f:指定要读取的info格式的帮助文档;
-n:指定首先访问的info帮助文件的节点;
-o:输出被选择的节点内容到指定文件。
cal命令
用于显示当前日历,或者指定日期的日历
-l:显示单月输出;
-3:显示临近三个月的日历;
-s:将星期日作为月的第一天;
-m:将星期一作为月的第一天;
-j:显示“julian”日期;
-y:显示当前年的日历
cp命令
用来将一个或者多个源文件 或者目录复制到指定的目的的文件或者目录。他可以将单个源文件复制成一个指定的文件。同时,该命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已存在的目录,否则将错线错误。
-d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
-f:强行复制文件或目录,不论目标文件或目录是否已存在;
-R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
-v:详细显示命令执行的操作。
-l:对源文件建立硬连接,而非复制文件;
dmesg 命令
用于检查和控制内核的环形缓冲区,kenrnel会将开机信息存储在ring buffer中,您若开机时来不及查看信息,可利用demesg来查看 开机信息保存在 /var/log/dmesg文件中
-c:显示信息后,清除ring buffer中的内容;
-s<缓冲区大小>:预设置为8196,刚好等于ring buffer的大小;
-n:设置记录信息的层级
lrzsz 命令。其实应该分 rz sz
可以替代ftp的上传下载功能
需要进行安装才能进行使用
安装
yum -y install lrzsz
上传
rz
下载
sz
tail
以上是关于命令说明(混乱版)第一周的主要内容,如果未能解决你的问题,请参考以下文章