本期文章主要简单介绍Linux中常用的系统命令,包括:stat、who、whoami、hostname、uname、top、ps、du、df、ifconfig、free、clear、alias等。
1、stat -- 显示文件(inode)的状态信息
stat命令用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。
每一个文件都有3种时间(称为时间戳timestamps),对这3种时间,很多时候容易混淆不清,因此 这里要说明下: Access time(atime):是指取用文件的时间,所谓取用,常见的操作有:使用编辑器查看文件内容,使用cat命令显示文件内容,使用cp命令把该文件(即来源文件)复制成其他文件,或者在这个文件上运用grep sed more less tail head 等命令,凡是读取而不修改文件的操作,均衡改变文件的Access time. Modify time(mtime):是指修改文件内容的时间,只要文件内容有改动(如使用转向输出或转向附加的方式)或存盘的操作,就会改变文件的Modify time,平常我们使用ls –l查看文件时,显示的时间就是Modify time Change time(ctime):是指文件属性或文件位置改动的时间,如使用chmod,chown,mv指令集使用ln做文件的硬是连接,就会改变文件的Change time. 注释: 如果修改文件(使用编辑器存盘或使用) >>转向操作),则Modify time和Change time 会同步更新成写入的时间,但Access time不变。 如果执行touch文件,则3种时间全部改变。 使用ln –s做文件的软式连接,会改变文件的取用时间。 使用ls –la查看一般文件,不会更改这三种时间,但如果这个文件时符号链接文件,则会改变取用的时间(Access time)
实例:显示文件的详细信息 - stat backMyCrontab
2、who和whoami-- 显示当前系统的用户信息
who命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等。
显示当前登录系统的用户
# who //显示当前登录系统的用户 root tty7 2014-05-13 12:12 (:0) root pts/0 2014-05-14 17:09 (:0.0)
只显示当前用户
# who -m -H NAME LINE TIME COMMENT root pts/1 2014-05-14 18:51 (192.168.1.17)
精简模式显示
# who -q root root root root
显示当前登录用户的IP
# who -m root pts/0 2020-04-04 21:15 (119.117.83.115)
whoami命令用于显示自身用户名称,本指令相当于执行"id -un"指令。
3、hostname-- 显示主机名
Linux中hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname。也可以直接cat /proc/sys/kernel/hostname查看。
hostname命令可以设置系统的hostname,格式:hostname newname newname即要设置的新的hostname,运行后立即生效, 但是在系统重启后会丢失所做的修改,如果要永久更改系统的hostname, 就要修改相关的设置文件。 1.临时修改: #hostname ***** //*****为修改的hostname 2.永久修改: # vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=yourname //在这修改hostname # vi /etc/hosts 127.0.0.1 localhost.localdomain localhost 192.168.184.133 yourname //在这修改hostname
4、uname-- 显示操作系统相关信息
uname可显示电脑以及操作系统的相关信息。 语法: uname [-amnrsv][--help][--version] 参数说明: -a或--all 显示全部的信息。 -m或--machine 显示电脑类型。 -n或-nodename 显示在网络上的主机名称。 -r或--release 显示操作系统的发行编号。 -s或--sysname 显示操作系统名称。 -v 显示操作系统时间(timestamp)。 --help 显示帮助。 --version 显示版本信息。
5、top-- 监控linux的系统状况
-b 以批量模式运行,但不能接受命令行输入; -c 显示命令行,而不仅仅是命令名; -d N 显示两次刷新时间的间隔,比如 -d 5,表示两次刷新间隔为5秒; -i 禁止显示空闲进程或僵尸进程; -n NUM 显示更新次数,然后退出。比如 -n 5,表示top更新5次数据就退出; -p PID 仅监视指定进程的ID;PID是一个数值;-q 不经任何延时就刷新; -s 安全模式运行,禁用一些交互互指令; -S 累积模式,输出每个进程的总的CPU时间,包括已死的子进程;
这里不做过多介绍,大家如果需要可以查看详情:
http://man.linuxde.net/top
6、ps-- 进程管理命令
Linux中的Ps命令用于显示当前进程 (process) 的状态,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等信息。详情点击文章:Linux命令之Ps——进程管理命令
ps -ef/aux/ax:显示所有当前进程 ps -u root:显示指定用户进程 ps -aux --sort -pcpu:根据CPU使用率来升序排序 ps -f -C getty 1:通过进程名和PID过滤,带格式显示(1是PID或者进程名) pstree/ps -axjf:树形显示进程
7、du和df-- 显示 Linux 文件系统的磁盘使用情况
du (Disk usage) 用来计算每个文件的磁盘用量,目录则取总用量。
df (disk free) 其功能显示每个文件所在的文件系统的信息,默认是显示所有文件系统。
示例1:显示单个文件的大小(默认为k) -- du t3.log [root@recycleBin]# du t3.log 4 t3.log 示例2:-s选项 sum求和当前目录文件大小 -- du -sh $(pwd) [root@recycleBin]# du -sh $(pwd) 32K /recycleBin 示例3:输出当前目录下各个子目录所使用的空间 -- du --max-depth=1 [root@izwz970o39tdx3g4cd7lmaz jhhtest]# du --max-depth=1 32 ./recycleBin 120 ./autoCheckIn 160 . 示例4:显示磁盘使用情况 -- df [root@jhhtest]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/vda1 41151808 5306536 33731840 14% / devtmpfs 931528 0 931528 0% /dev tmpfs 941860 0 941860 0% /dev/shm 示例5:以人性化的方式显示磁盘使用情况:df -h 示范6 : 显示某个文件所在的文件系统的信息:df -h 目录名称
8、ifconfig-- 显示或设置网络设备状态
ifconfig可设置网络设备的状态,或是显示目前的设置。
启动关闭指定网卡
# ifconfig eth0 down# ifconfig eth0 up
为网卡配置和删除IPv6地址
# ifconfig eth0 add 33ffe:3240:800:1005::2/ 64 //为网卡诶之IPv6地址# ifconfig eth0 del 33ffe:3240:800:1005::2/ 64 //为网卡删除IPv6地址
用ifconfig修改MAC地址
# ifconfig eth0 down //关闭网卡# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE //修改MAC地址# ifconfig eth0 up //启动网卡# ifconfig eth1 hw ether 00:1D:1C:1D:1E //关闭网卡并修改MAC地址 # ifconfig eth1 up //启动网卡
配置IP地址
# ifconfig eth0 192.168.1.56 //给eth0网卡配置IP地址# ifconfig eth0 192.168.1.56 netmask 255.255.255.0 // 给eth0网卡配置IP地址,并加上子掩码# ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255// 给eth0网卡配置IP地址,加上子掩码,加上个广播地址
启用和关闭ARP协议
# ifconfig eth0 arp //开启# ifconfig eth0 -arp //关闭
设置最大传输单元
# ifconfig eth0 mtu 1500 //设置能通过的最大数据包大小为 1500 bytes
实例来源:https://www.runoob.com/linux/linux-comm-ifconfig.html
9、free-- 显示系统内存状态信息
free 命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。
-b 以Byte为单位显示内存使用情况。 -k 以KB为单位显示内存使用情况。 -m 以MB为单位显示内存使用情况。-g 以GB为单位显示内存使用情况。 -h 以human readable方式输出-o 不显示缓冲区调节列。 -s<间隔秒数> 持续观察内存使用状况。 -t 显示内存总和列。RAM+SWAP-V 显示版本信息。
10、clear-- 清屏指令
Linux中clear命令用于清除屏幕,使用时候直接一条clear命令回车就行。
11、alias-- 设置别名
alias命令用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。
例如:alias 100coderssh= 'ssh -i ~/.ssh/100.pem ec2-user@192.168.1.131' 这下子就可以直接使用100coderssh来代替原来ssh登录命令了 alias-p : 查看当前所有的alias alias每次重启都需要重新设置,可以将alias命令加入 /etc/.bashrc 或者 ~/.bashrc文件就不用每次重启都重新设置了。 /etc/.bashrc针对所有用户生效,~/.bashrc是针对当前用户生效 。 最后执行下 source /etc/bash.bashrc 命令会立即刷新alias。