Linux常用命令速查

本文最后更新于:2021年1月28日 晚上

1. 常用

命令
描述
less fileName查看一个长文件的内容,与’more’不同的是它允许在文件中和正向操作一样的反向操作(就是还可以向上翻页查看)
tail -f fileName实时查看被添加到一个文件中的内容
tail -f fileName | grep -10 'k1'实时查看被添加到一个文件中的且包含“k1”的内容,并打印前后10行
pwd显示工作路径
rm -rf [fileName][dirName]删除指定的文件或文件夹
mv dir1 dir2重命名/移动 一个目录或文件(dir2存在为移动,不存在为重命名)
ps -ef | grep java查看与java相关的进程
kill -9 pid强制杀死进程
grep -10 k1 /data/a.log搜索关键词”k1”所在行,并打印匹配行的前后10行
find /data -name file1搜索/data文件夹下的file1
find /data -name \*.txt搜索/data文件夹下的带有’.txt’结尾的文件
date显示系统日期
vim /etc/hosts编辑 hosts 文件 格式:127.0.0.1 www.test.com

2. 压缩、解压文件

格式说明压缩命令解压命令
*.zipzip 程序打包压缩的文件zip fileName.zip dirNameunzip fileName.zip [dirName]
*.rarrar 程序压缩的文件rar a fileName.rar dirNamerar x fileName.rar
*.7z7zip 程序压缩的文件7z a fileName.7z dirName7z x fileName.7z
*.tartar 程序打包,未压缩的文件tar cvf fileName.tar dirNametar xvf fileName.tar
*.gzgzip 程序 (GNU zip) 压缩的文件gzip fileNamegzip -d fileName.gz
*.bz2tar 打包,gzip 程序压缩的文件bzip2 -z fileNamebzip2 -d fileName.bz2
*.tar.gztar打包,gzip程序压缩的文件tar zcvf fileName.tar.gz dirNametar zxvf fileName.tar.gz
*.tar.xztar打包,xz程序压缩的文件tar cvJf fileName.tar.xz dirNametar -xvJf fileName.tar.xz
*.tar.bz2tar打包,bzip2程序压缩的文件tar jcvf fileName.tar.bz2 dirNametar jxvf fileName.tar.bz2
*.Zcompress命令解压缩rar文件compress fileNameuncompress fileName.Z

3. 文件和目录

命令描述
cd /home进入 ‘/ home’ 目录
cd ..返回上一级目录
cd ../..返回上两级目录
cd进入个人的主目录
cd -返回上次所在的目录
pwd显示工作路径
ls查看目录中的文件
ls -F查看目录中的文件
ls -l显示文件和目录的详细资料
ls -a显示隐藏文件
mkdir dir1创建一个叫做 ‘dir1’ 的目录
mkdir dir1 dir2同时创建两个目录
mkdir -p /dir1/dir2创建一个目录树
rmdir dir1删除一个叫做 ‘dir1’ 的目录
touch file1.txt创建一个空白文件
cp file1 file2复制file1为file2
cp dir/* .复制一个目录到当前工作目录
cp -a dir1 dir2复制dir1目录到dir2

4. 查看文件内容

命令描述
more file1查看一个长文件的内容
cat file1从第一个字节开始正向查看文件的内容(就是从上到下,自动翻页查看)
tac file1从下到上,和cat相反
head -2 file1查看一个文件的前2行
tail -2 file1查看一个文件的最后2行

5. 文本处理

命令描述
grep k1 /data/a.log在文件 “/data/a.log” 中搜索关键词”k1”
grep ^k1 /data/a.log在文件 “/data/a.log” 中搜索以”k1”开始的词汇
grep -A 10 k1 /data/a.log搜索关键词”k1”所在行,并打印匹配行的后10行
grep -B 10 k1 /data/a.log打印前10行
grep -C 10 k1 /data/a.log打印前后10行
grep -10 k1 /data/a.log打印匹配行的前后10行
grep [0-9] /data/a.log选择 “/data/a.log” 文件中所有包含数字的行
grep Aug -R /data在目录 “/data” 及随后的目录中搜索字符串”Aug”
sed ‘s/str1/str2/g’ example.txt将example.txt文件中的 “str1” 替换成 “str2”
sed ‘/ *#/d; /^$/d’ example.txt从example.txt文件中删除所有注释和空白行
comm -1 file1 file2比较两个文件的内容只删除 ‘file1’ 所包含的内容
comm -2 file1 file2比较两个文件的内容只删除 ‘file2’ 所包含的内容
comm -3 file1 file2比较两个文件的内容只删除 两个文件共有的部分

6. 用户和群组

命令描述
groupadd group1创建一个新用户组group1
groupdel group1删除一个新用户组group1
groupmod -n group2 group1将用户组group1重命令为group2
useradd -c “Name Surname “ -g admin -d /home/user1 -s /bin/bash user1创建一个属于 “admin” 用户组的用户
useradd user1创建一个新用户
userdel -r user1删除一个用户 ( ‘-r’ 排除主目录)
usermod -c “User FTP” -g system -d /ftp/user1 -s /bin/nologin user1修改用户属性
passwd user1修改一个用户的口令 (只允许root执行)
chage -E 2099-12-31 user1设置用户口令的失效期限

7. 文件权限

使用 “+” 设置权限,使用 “-“ 取消权限

命令描述
ls -lh显示权限
chmod ugo+rwx dir1设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限
chmod go-rwx dir1取消目录的群组(g)、其他人(o)的读(r )、写(w)和执行(x)的权限
chown user1 file1改变文件file1的所有人属性为user1
chown user1:group1 file1改变一个文件的所有人和群组属性
chown -R user1 dir1改变一个目录的所有人属性并同时改变改目录下所有文件的属性
chgrp group1 file1改变文件的群组

8. 系统信息、关机

命令描述
reboot重启
logout注销
uname -r显示正在使用的内核版本
uname -m显示机器的处理器架构
date 041217002007.00设置日期和时间 - 月日时分年.秒
clock -w将时间修改保存到 BIOS

9. 其他( RPM + YUM )

9.1 RPM 文件操作命令

  • 安装

    命令描述
    rpm -i example.rpm安装 example.rpm 包
    rpm -iv example.rpm安装 example.rpm 包,并在安装过程中显示正在安装的文件信息
    rpm -ivh example.rpm安装 example.rpm 包,并并在安装过程中显示正在安装的文件信息及安装进度
  • 查询

    命令描述
    rpm -qa | grep jdk查看 jdk 是否被安装
    rpm -ql jdk查看 jdk 是否被安装
  • 卸载

    命令描述
    rpm -e jdk卸载 jdk(一般卸载的时候都要先用 rpm -qa 看下整个软件的全名)

9.2 YUM 软件管理

  • 依安装 apache 为例
    命令描述
    yum install -y httpd安装 apache
    yum remove -y httpd卸载 apache
    yum info -y httpd查看 apache 版本信息
    yum list -‌-showduplicates httpd查看可以安装的版本
    yum install httpd-查询到的版本号安装指定版本
    yum install httpd-查询到的版本号安装指定版本

10. 参考链接