本章主要对常见命令进行粗略总结,仅适合已学者在一时想不起来是查看,不适合初学者学习。
Tab 按键—命令补齐功能
Ctrl+c 按键—停掉正在运行的程序
Ctrl+d 按键—相当于exit,退出
Ctrl+L 按键—清屏
Home 移动光标到本行开头
End 移动光标到本行结尾
pwd
显示当前路径ls
查看目录(dir
功能一样)ls、dir 都是列出当前路径下的文件(不包括隐藏文件)
这两个命令用法一致,都有-a,-l,-al(和-la是一样的)的用法
ll 、ls -l、dir -l
都是一样的,都是列出当前路径下的文件的详细信息,不包括隐藏文件。
cd
切换到指定路径
cd 命令有通配符的用法
/ 表示根目录
~ 表示家目录(主目录)
. 表示当前目录
… 表示上级目录
−
-
− 表示上一次进入的目录
mkdir
创建一个空目录mkdir有四个用法,分别是-m,-p,-v,-Z(最常用的为-p,-v)
rmdir
删除一个空目录rm
删除文件或目录-r 递归删除
-i 删除前询问
-f 删除前不询问(强制删除)
-rf 删除目录下的所有文件并且不询问
-r 复制文件夹下所有内容
在同一路径下用mv命令可以重命名文件
mv命令还可以移动文件
*cat命令还可以编辑文件,若文件不存在则会新建。
cat在重定向时,>表示覆盖写入,>>表示追加写入,<<后为结算符
cat还可以合并文件,>表示覆盖写入,>>表示追加写入
echo 也可以向文件写入数据,>表示覆盖写入,>>表示追加写入
tac命令可以查询文件的内容,从文件最后一行开始显示。
nl命令也是查看文件内容,从文件最后一行开始显示,但是会给行编号。
下载文件 wget
在文本文件中查找某个字符串 grep
统计文本中行数、字数、字符数 wc
查找文件 find / -name ‘auto.cnf’
分页显示文本文件内容 more
、less
显示文件头、尾内容 head
、tail
进入编辑器 vi/vim
,vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。
进入编辑模式插入 i
退出编辑模式 esc
保存:后面输入w
退出:后面输入q
保存后退出 wq
不保存退出:后面输入q!
显示行号 set number
查找关键字 /xxxx 按n跳到下一个,shift+n上一个
复制光标所在行,并粘贴 yyp
h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)
跳到文本的最后一行:按“G”
跳到第一行的第一个字符:先按两次“g”
打包压缩 tar\gzip\bzip2
-c归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
例:
只打包,不压缩:tar -cvf /home/abc.tar /home/abc
打包,并用gzip压缩:
tar -zcvf /home/abc.tar.gz /home/abc
打包,并用bzip2压缩:
tar -jcvf /home/abc.tar.bz2 /home/abc
如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf
中的“c” 换成“x” 就可以了。
linux解压zip命令:
将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。
例:grep -r “close” /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。
Linux遵循文件系统:每一个文件都有一个路径,每一个文件都有三组权限,用rwx来表示。
三种基本权限
R:读,数值表示为 4
W:写,数值表示为 2
X:可执行,数值表示为1
[root@VM-16-2-centos ~]# ll
total 597952
-rw------- 1 root root 12387614 Aug 29 2021 apache-zookeeper-3.7.0-bin.tar.gz
-rw-r--r-- 1 root root 113304268 May 3 12:22 jdk-8u281-linux-x64.rpm
如上所示,jdk-8u281-linux-x64.rpm 文件的权限为-rw-r--r--
,一共十个字符,分成四段。
-
”表示普通文件;这个位置还可能会出现l链接;d表示目录。rw-
表示当前所属用户的权限,所以用数值表示为 4+2=6。r--
表示当前所属组的权限,所以用数值表示为 4 。r--
表示其他用户权限,所以用数值表示为 4。所以操作此文件的权限用数值表示为 644
更改权限:sudo chmod [u所属用户 g所属组 o其他用户 a所有用户] [+增加权限 -减少权限] [r w x] 目录名
例如:有一个文件 filename,权限为-rw-r----x ,将权限值改为-rwxrw-r-x,用数值表示为765
sudo chmod u+x g+w o+r filename
也可以用数值表示 sudo chmod 765 filename
运行./filename
退出ctrl+c
运行 nohup command >out.file 2>&1 &
退出 ps -ef |grep 关键字 |awk '{print $2}'|xarg kill -9
设置开机启动 systemctl enable
启动systemctl start
关闭systemctl stop
显示指定文件的详细信息,比ls更详细 stat
显示在线登陆用户 who
显示当前操作用户whoami
显示主机名hostname
显示系统信息uname
动态显示当前耗费资源最多进程信息top
显示瞬间进程状态 ps \ ps -aux
查看目录大小 du -h /home
(带有单位显示目录信息)
查看磁盘大小 df -h
(带有单位显示磁盘信息)
查看网络情况 ifconfig
测试网络连通 ping
显示网络状态信息 netstat
命令不会用了,看文档 如:man grep
[root@VM-16-2-centos ~]# man grep
GREP(1) General Commands Manual GREP(1)
NAME
grep, egrep, fgrep - print lines matching a pattern
SYNOPSIS
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
……
清屏 clear
对命令重命名 alias
,如:alias showmeit="ps -aux"
,解除使用unaliax showmeit
杀死进程 kill
,可以先用ps
或 top
命令查看进程的id,然后再用kill命令杀死进程。kill -9
强制删除
查看防火墙状态 firewall-cmd --state
停止防火墙 systemctl stop firewalld.service
禁止firewall开机启动 systemctl disable firewalld.service
关机 shutdown -h now
-r 关机重启
-h 关机不重启
now 立刻关机
重启 reboot
关机 halt
查看网卡信息 ifconfig
网络配置 /etc/sysconfig/network-script/ifcfg-eth0
配置网卡 /etc/udev/rules.d/70-persistent-net.rules
创建用户 useradd
设置密码 passwd
/etc/group
/etc/passwd
存储用户账号的密码 /etc/shadow
存储用户组账号的密码/etc/gshadow
用户名useradd
用户名userdel
用户名adduser
组名groupadd
组名groupdel
给root设置密码passwd root
su root
su - root
系统环境变量/etc/profile
用户环境变量bash_profile
用户环境变量.bashrc
su user
切换用户,加载配置文件.bashrc
su - user
切换用户,加载配置文件/etc/profile ,加载bash_profile
语法:
sudo chown [-R] owner[:group] {File|Directory}
示例:
-rw-r--r-- 1 root root 113304268 May 3 12:22 jdk-8u281-linux-x64.rpm
例如:还以 jdk-8u281-linux-x64.rpm
为例。属于用户root,组root
要想切换此文件所属的用户及组。可以使用命令。
sudo chown daley:java jdk-8u281-linux-x64.rpm
安装 rpm -i jdk-XXX_linux-x64_bin.rpm
查找 rpm -qa | grep jdk
列表 rpm -qa | more
ubuntu dpkg 方式
查找dpkg -I | grep jdk
列表dpkg -I | more
安装dpkg -i jdk-XXX_linux-x64_bin.deb
搜索 yum search jdk
安装 yum install java-11-openjdk.x86_64
删除 yum erase java-11 -openjdk.x86 64
配置文件 /etc/yum.repos.d/CentOS-Base.repo
ubuntu apt-get 方式
搜索 apt・cache search jdk
安装apt-get install openjdk-9-jdk
删除apt-get purge openjdk-9-jdk
配置文件/etc/apt/sources. Iist
编辑 .bashrc
环境变量配置
打开环境变量文件 `vi /etc/profile`
配置环境变量
export JAVA_HOME=/root/j d k-XXX_lin ux-x64
export PATH=$JAVA HOME/bin:$PATH
刷新配置 `source /etc/profile`
查看硬件信息命令:ifconfig free fdisk ethtool mii-tool dmidecode dmesg lspci
系统性能监视命令:uptime top free vmstat mpstat iostat sar chkconfig
内存命令:top free vmstat mpstat iostat sar
CPU命令:top vmstat mpstat iostat sar
I/O命令:vmstat mpstat iostat sar
进程命令:ipcs ipcrm lsof strace lstrace
负载命令:uptime mount umount df du fsck dd dumpe2fs dump
关机和查看系统命令:shutdown halt init
常用指令
ls 显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir 创建目录
-p 创建目录,若无父目录,则创建p(parent)
cd 切换目录
touch 创建空文件
echo 创建带有内容的文件。
cat 查看文件内容
cp 拷贝
mv 移动或重命名
rm 删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
find 在文件系统中搜索某文件
wc 统计文本中行数、字数、字符数
grep 在文本文件中查找某个字符串
rmdir 删除空目录
tree 树形结构显示目录,需要安装tree包
pwd 显示当前目录
ln 创建链接文件
more、less 分页显示文本文件内容
head、tail 显示文件头、尾内容
ctrl+alt+F1 命令行全屏模式
系统管理命令
stat 显示指定文件的详细信息,比ls更详细
who 显示在线登陆用户
whoami 显示当前操作用户
hostname 显示主机名
uname 显示系统信息
top 动态显示当前耗费资源最多进程信息
ps 显示瞬间进程状态 ps -aux
du 查看目录大小 du -h /home带有单位显示目录信息
df 查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig 查看网络情况
ping 测试网络连通
netstat 显示网络状态信息
man 命令不会用了,找男人 如:man ls
clear 清屏
alias 对命令重命名 如:alias showmeit=“ps -aux” ,另外解除使用unaliax showmeit
kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。
关机/重启机器
shutdown
-r 关机重启
-h 关机不重启
now 立刻关机
halt 关机
reboot 重启
系统信息
arch 显示机器的处理器架构
uname -m 显示机器的处理器架构
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2007 显示2007年的日历表
date 041217002007.00 设置日期和时间 - 月日时分年.秒
clock -w 将时间修改保存到 BIOS
关机 (系统的关机、重启以及登出 )
shutdown -h now 关闭系统
init 0 关闭系统
telinit 0 关闭系统
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启
reboot 重启
logout 注销
文件和目录
cd /home 进入 ‘/ home’ 目录’
cd … 返回上一级目录
cd …/… 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
cd - 返回上次所在的目录
pwd 显示工作路径
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls [0-9] 显示包含数字的文件名和目录名
tree 显示文件和目录由根目录开始的树形结构
lstree 显示文件和目录由根目录开始的树形结构
mkdir dir1 创建一个叫做 ‘dir1’ 的目录’
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除一个叫做 ‘file1’ 的文件’
rmdir dir1 删除一个叫做 ‘dir1’ 的目录’
rm -rf dir1 删除一个叫做 ‘dir1’ 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp dir/* . 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
cp -r dir1 dir2 复制一个目录及子目录
ln -s file1 lnk1 创建一个指向文件或目录的软链接
ln file1 lnk1 创建一个指向文件或目录的物理链接
touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm)
file file1 outputs the mime type of the file as text
文件搜索
find / -name file1 从 ‘/’ 开始进入根文件系统搜索文件和目录
find / -user user1 搜索属于用户 ‘user1’ 的文件和目录
find /home/user1 -name *.bin 在目录 ‘/ home/user1’ 中搜索带有’.bin’ 结尾的文件
find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
find / -name *.rpm -exec chmod 755 ‘{}’ ; 搜索以 ‘.rpm’ 结尾的文件并定义其权限
find / -xdev -name *.rpm 搜索以 ‘.rpm’ 结尾的文件,忽略光驱、捷盘等可移动设备
locate *.ps 寻找以 ‘.ps’ 结尾的文件 - 先运行 ‘updatedb’ 命令
whereis halt 显示一个二进制文件、源码或man的位置
which halt 显示一个二进制文件或可执行文件的完整路径
参考博文: