1、文件和目录
cd 进入目录
示例:cd /home 进入home目录
cd.. 返回上一级目录
cd../.. 返回上两级目录
cd - 返回上次所在目录
cd ~ 返回根目录
cp
cp file1 file1 文件复制
cp-a
cp-a dir1 dir2 复制一个目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
(.代表当前目录)
ls 查看目录中的文件
ls -a 显示隐藏文件
ls -l 显示详细信息
ls -lrt 按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序)
pwd 显示工作路径
mkdir dir1 创建dir1目录
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
mv dir1 dir2 移动/重命名一个目录
rm -f file1 删除文件file1
rm -rf dir1 删除目录dir1及其子目录
2、查看文件内容
cat file1 从第一个字节开始正向查看文件的内容
head -2 file1 查看一个文件的前两行
more file1 查看一个长文件的内容
tac file1 从最后一行开始反向查看一个文件的内容
tail -3 file1 查看一个文件的最后三行
3、文本处理
grep str /tmp/test 在文件 '/tmp/test' 中查找 "str"
grep ^str /tmp/test 在文件 '/tmp/test' 中查找以 "str" 开始的行
grep [0-9] /tmp/test 查找 '/tmp/test' 文件中所有包含数字的行
grep str -r /tmp/* 在目录 '/tmp' 及其子目录中查找 "str"
diff file1 file2 找出两个文件的不同处
sdiff file1 file2 以对比的方式显示两个文件的不同
4、查找
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天内被创建或者修改过的文件
locate *.ps 寻找以 '.ps' 结尾的文件,先运行 'updatedb' 命令
find -name '*.[ch]' | xargs grep -E'expr'在当前目录及其子目录所有.c和.h文件中查找 'expr'
find -type f -print0 | xargs -r0 grep -F 'expr'在当前目录及其子目录的常规文件中查找 'expr'
find -maxdepth 1 -type f | xargs grep -F 'expr' 在当前目录中查找'expr'
5、压缩和解压
bzip2 file1 压缩 file1
bunzip2 file1.bz2 解压 file1.bz2
gzip file1 压缩 file1
gzip -9 file1最大程度压缩 file1
gunzip file1.gz解压 file1.gz
tar -cvf archive.tar file1 把file1打包成 archive.tar (-c: 建立压缩档案;-v: 显示所有过程;-f: 使用档案名字,是必须的,是最后一个参数)
tar -tf archive.tar 显示一个包中的内容
tar -xvf archive.tar 释放一个包
tar -xvf archive.tar -C /tmp 把压缩包释放到 /tmp目录下
zip file1.zip file1 创建一个zip格式的压缩包
zip -r file1.zip file1 dir1 把文件和目录压缩成一个zip格式的压缩包
unzip file1.zip 解压一个zip格式的压缩包到当前目录
unzip test.zip -d /tmp/ 解压一个zip格式的压缩包到 /tmp 目录
6、yum工具
yum -y install [package] 下载并安装一个rpm包
yum localinstall [package.rpm] 安装一个rpm包,使用你自己的软件仓库解决所有依赖关系
yum -y update 更新当前系统中安装的所有rpm包
yum update [package] 更新一个rpm包
yum remove [package] 删除一个rpm包
yum list 列出当前系统中安装的所有包
yum search [package] 在rpm仓库中搜寻软件包
yum clean [package] 清除缓存目录(/var/cache/yum)下的软件包
yum clean headers 删除所有头文件
yum clean all 删除所有缓存的包和头文件
7、网络
ip addr show 显示网卡的IP地址
ifconfig 显示以太网的配置
netmask 子网掩码 255.255.255.0
ifdown eth0 禁用 'eth0' 网络设备
ifup eth0 启用 'eth0' 网络设备
iwconfig eth1 显示一个无线网卡的配置
iwlist scan 显示无线网络
netstat 查看端口
-a (all)显示所有选项,netstat默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。(重要)
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名(macOS中表示协议 -p protocol)
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计 (重要)
-c 每隔一个固定时间,执行该netstat命令。
netstat 命令详解参考园友博客:https://www.cnblogs.com/echo1937/p/6677325.html
8、用户关机和重启
w或who 查看用户登录情况
who am i 查看自己登录
pkill -kill -t pts/1 踢掉pts/1用户
passwd 修改密码
shutdown -h 10 将于10分钟后关闭,且会显示在登录用户的当前屏幕中
shutdown -h now 立刻关机
shutdown -h 22:30 在22:22关机
shutdown -r now 立刻重启
shutdown -r +10 将于10分钟后重启
reboot 重启
halt 关机
9、系统、磁盘
df -h 显示磁盘的使用情况
top 罗列使用CPU资源最多的linux任务(输入q退出)
lscpu 查看CPU信息
ip route 查看路由
nmcli connection show 显示所有连接
nmcli connection show -a 仅显示当前活动的连接
nmcli device status 列出 NetworkManager 识别出的设备列表及他们的状态
nmcli device disconnect eno16777736 停止接口
nmcli device connect eno16777736 动接口
10、系统服务
systemctl -at service
ls /etc/systemd/system/*.service 服务目录
ls /usr/lib/systemd/system/*.service
systemctl -t service --state=active 查看活动的服务
systemctl start name.service 启动服务(name=服务名)
systemctl stop name.service 停止服务
systemctl status name.service 查看服务器状态
systemctl is-enabled name 检查服务是否enabled
systemctl enable name.service 设置开机服务启动
systemctl disable name.service 禁用服务
systemctl daemon-reload /etc/systemd/system/*.service 创建新的服务
11、常用快捷键
Ctrl+d 特殊的二进制值,表示EOF 在shell中表示退出当前shell
Ctrl+z 任务暂停
Ctrl + u 删除光标之前到行首的字符
Ctrl + k 删除光标之前到行尾的字符
Ctrl + c 强制中断程序的执行,,进程已经终止
Ctrl + a 光标移动到行首(ahead of line),相当于通常的Home键
Ctrl +e 光标移动到行尾(end of line)
Ctrl + f 光标向前(forward)移动一个字符位置
Ctrl + b 光标往回(backward)移动一个字符位置
Ctrl + l 清屏,相当于执行clear命令
Ctrl + r 显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
Ctrl + w 删除从光标位置前到当前所处单词(word)的开头
Ctrl + t 交换光标位置前的两个字符
Ctrl + y 粘贴最后一次被删除的单词
Ctrl + Alt + d 显示桌面
Alt + b 光标往回(backward)移动到前一个单词
Alt + d删除从光标位置到当前所处单词的末尾
Alt + F2 运行
Alt + F4 关闭当前窗口
Alt + F9 最小化当前窗口
Alt + F10 最大化当前窗口
Alt + Tab 切换窗口
Alt +按住左键 移动窗口(或在最下面的任务栏滚动鼠标滑轮)
部分命令参考园友并做测试优化:http://www.cnblogs.com/webnote/p/5748532.html
linux基础知识网站:http://www.runoob.com/linux/linux-tutorial.html