Linux常用命令(二)
系统信息类命令
dmesg 显示系统开机信息命令
dmesg 代表 diagnostic message。显示系统诊断信息、操作系统版本号、物理内存的大小以及其它信息。
df 用于查看文件系统的各个分区的占用情况。df 代表 disk free。
df -hl —— 查看磁盘剩余空间信息。
df -T —— 显示分区类型。
fdisk 磁盘分区工具
fdisk -l —— 显示所有硬盘的分区情况。
du [options] [directory or filename…] 显示指定的目录或文件所占用的磁盘空间。du 代表 disk usage
free 查看系统内存,虚拟内存(交换空间)的大小占用情况
who 或 w 查看当前系统中有哪些用户登录
who —— 显示登录的用户名、登录终端和登录时间。
who -uH —— 带有标题栏的登录用户的详情,其中 –u 选项指定显示用户空闲时间。
网络通讯类命令
ifconfig 显示和设置网络设备
ifconfig eth0 192.168.0.1 —— 将第一块网卡的 IP 地址设置为 192.168.0.1。
ifconfig eth0 down —— 关闭第一块网卡。
ifconfig eth0 up —— 启用第一块网卡。
ifconfig eth0 netmask 255.255.255.0 —— 将第一块网卡的子网掩码设置为255.255.255.0。
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 —— 同时设置 IP 地址和子网掩码。
ifconfig eth0 -broadcast 192.168.0.255 —— 将第一块网卡的广播地址设置为192.168.0.255。
route 显示和设置路由
route add 0.0.0.0 gw 网关地址 —— 增加一个默认路由。
route del 0.0.0.0 gw 网关地址 —— 删除一个默认路由。
route —— 显示当前路由表。
ping [options][主机名/IP 地址],检测是否能够与远端机器建立网络通讯连接
netstat [options] 查看网络状态
netstat -i ——interface,显示网络界面信息表单。
netstat -s ——statistice,显示网络工作信息统计表。
netstat -t ——tcp,显示 TCP 传输协议的连接状态。
netstat -r ——route,显示路由表。
traceroute [远程主机 IP 地址或域名] 跟踪路由
ftp 文件传输
telnet [主机名/IP 地址] 登录到远程计算机
finger 查询远程计算机(通常是运行 Linux/UNIX 的计算机)上用户的详细信息。
软件包管理命令
RPM 的全名是 Red Hat Package Manager。利用 RPM 命令,可以安装、删除、升级管理软件,支持在线安装和升级软件。通过 RPM 包管理可以知道软件包包含哪些文件,也可以查询系统中的某个文件属于哪个软件包,可以查询系统中的软件包是否安装及安装的版本。具体用法请参见 Linux 相关书籍。下面列举一些rpm的基本用法。
我们得到一个新软件,在安装之前,一般都要先查看一下这个软件包是做什么的,可以用这条命令查看:
rpm -qpi strace-4.5.18-10.13.x86_64.rpm
系统将会列出这个软件包的详细资料。
我们可以用下面这条命令查看软件包将会在系统里安装哪些文件:
rpm -qpl strace-4.5.18-10.13.x86_64.rpm
安装该软件包:
rpm -ivh strace-4.5.18-10.13.x86_64.rpm
如果系统已经安装该软件包的低版本,可以用下面的命令进行升级安装:
rpm -Uvh strace-4.5.18-10.13.x86_64.rpm
安装某个软件时,RPM会自动处理包的依赖关系,如果不想进行依赖检查,可以给rpm加上 --nodeps 参数,想要强制安装可以加上 --force 参数。
卸载某个安装过的软件,只需执行 rpm-e <文件名> 命令即可。
rpm -e strace
如果不小心误删了某些包的系统文件,可以用下来命令查看有哪些文件损坏,以便进行修复安装。
rpm -Va
下面这条命令行可以帮助我们快速判定某个文件是属于哪个软件包:
rpm -qf <文件名>
如果想查看当前系统已经安装了哪些rpm包,可以执行:
rpm -qa
也可以与 grep 联用,进行查找操作:
rpm -qa | grep strace
编辑器命令(vim)
在 Linux 下编写文本或语言程序,首先必须选择一种文本编辑器。VIM编辑器是工作在字符模式下的高效率文本编辑器,它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。
在命令行里输入vim即可调用VIM编辑器:
vim —— 调用vim,可以进行编辑工作,编辑完成后可以保存到新文件;
vim foo.txt —— 如果文件已经存在,则打开编辑,如果文件不存在,则新建编辑;
VIM有几种基本工作模式,在VIM里头执行 :help mode 可以看到VIM的所有模式,主要有如下几种。
Normal mode 即通常所谓的命令模式,在此模式使用 a、i、A、I、o、O 等进入Insert mode。
Insert mode 即通常所谓的编辑模式,在此模式使用 ESC 进入Normal mode或者Ctrl-o 临时进入Normal mode。
Command-line mode 命令行模式,在Normal mode下按冒号进入,按ESC取消执行命令或者回车执行命令,然后回到Normal mode。
Visual mode 即选择模式(注意跟用鼠标选择不同),用v,V,C-v或C-q进入
Select mode 鼠标选择
Replace mode 在Normal mode下按R进入,按ESC返回Normal mode,相当于Windows下命令行中按Insert键进入的覆盖模式
从VI/VIM中退出:按ESC确认返回到Normal mode,然后
:wq 保存并退出
:q! 不保存并退出
:x 退出,如果文件更改则保存
ZZ 退出,如果文件更改则保存(按住Shift,再按两次z)
VIM的命令是非常具有美感的,下面是几个例子:
i 在光标前插入;I 在行首插入
a 在光标后插入;A 在行末插入
o 在下一行插入;O 在上一行插入
x 删除当前字符;X 删除前一个字符
类似的还有b,B,ge,gE,w,W,e,E,f,F,t,T,这些命令都可以用 :help cmdname查到帮助。
dd 删除一行
yy 拷贝一行
h j k l 左下上右移动光标
Ctrl-w h,Ctrl-w j,Ctrl-w k,Ctrl-w l 切换到左下上右窗口
VI/VIM的命令大多都可以带一个数字前缀或者一个数字范围,比如:
5dd 从当前行开始删除5行
5yy 从当前行开始拷贝5行
1,3d 删除1至3行
1,3y 拷贝1至3行 (.代表当前行,$代表最后一行)
VIM的功能非常强大,想进一步了解和学习VIM,可以参考VIM相关文档。
用户管理命令
useradd 添加用户
userdel 删除用户
passwd