Linux 常用命令

打印工作目录

  • pwd

切换工作目录

  • cd /:切换到系统根目录
  • cd ~:切换到用户家目录
  • cd ..:切换到上一层目录
  • cd -:切换到上一次操作所在目录
  • cd /etc:切换到根目录下的 etc 目录
  • cd ~/bbb:切换到用户家目录下的 bbb 目录
  • cd ../etc:切换到上一层目录下的 etc 目录
  • cd bbb:切换到当前目录下的 bbb 目录
  • cd ./bbb:切换到当前目录下的 bbb 目录

目录创建、删除

  • mkdir aaa:创建目录 aaa
  • mkdir -p aaa/bbb:在 aaa 目录下创建 bbb 目录,如果 aaa 目录不存在,先创建 aaa 目录
  • rmdir aaa:删除目录 aaa,aaa 必须是空目录

文件创建、删除

  • touch a.txt:创建一个空文件
  • rm a.txt:询问删除文件
  • rm -f a.txt:不询问直接删除文件

目录查看

  • ls:查看目录下的文件和目录信息
  • ll:ll 是 ls -l 的别名,查看目录下的文件和目录的详细信息

文件查看

  • cat install.log:查看 install.log
  • more install.log:分步查看文件,一般用于要显示的内容会超过一个画面长度的情况

    • 按回车显示下一行数据
    • 按空格显示下一屏数据
    • 按 q 退出查看
  • less install.log:和 more 类似,分步查看文件

    • 按 PgUp 查看上一屏数据
    • 按 PgDn 查看下一屏数据
    • 按 k 查看上一行数据
    • 按 j 查看下一行数据
    • 按 q 退出查看
  • tail:用于查看文件后几行的数据

    • tail -3 install.log:查看 install.log 最后 3 行的数据
    • tail -f catalina.out:动态查看,ctrl + c 结束查看

文件查找

  • find / -name anaconda-ks.cfg:查找 / 下文件名为 anaconda-ks.cfg

    /root/anaconda-ks.cfg
    
  • find / -name cata*.log:查找 / 下文件名以 cata 开头、.log结尾的文件

    /root/apache-tomcat-7.0.57/logs/catalina.2020-08-16.log
    /root/apache-tomcat-7.0.57/logs/catalina.2020-08-19.log
    

字符串查找

  • cat grade.txt

    1 LiuBei 99
    2 GuanYu 88
    3 ZhangFei 77
    4 CaoCao 75
    5 ZhouYu 68
    6 SunQuan 56
    7 GuanYu 52
    8 ZhangFei 51
    
  • grep ZhouYu grade.txt:将 grade.txt 里包含 ZhouYu 的行都打印出来,即查看 ZhouYu 的成绩

    5 ZhouYu 68
    
  • grep ZhouYu grade.txt -A1 -B2:查看 ZhouYu 的成绩,和他前 2 名 和 后 1 名 的人的成绩

    3 ZhangFei 77
    4 CaoCao 75
    5 ZhouYu 68
    6 SunQuan 56
    
  • grep GuanYu grade.txt -A1 -B2:查看 GuanYu 的成绩,和他前 2 名 和 后 1 名 的人的成绩,可以看到有两人叫 GuanYu,用 -- 分隔

    1 LiuBei 99
    2 GuanYu 88
    3 ZhangFei 77
    --
    5 ZhouYu 68
    6 SunQuan 56
    7 GuanYu 52
    8 ZhangFei 51
    
  • grep GuanYu grade.txt --color -A1 -B2:查看 GuanYu 的成绩,和他前 2 名 和 后 1 名 的人的成绩,并将 搜索关键字 GuanYu 高亮显示

普通文件、目录文件操作

  • cp:复制、如果需要可以重命名
    • cp a.txt bbb:若存在 bbb 目录,则是复制 a.txt 到 bbb,否则就是将 a.txt 复制到本目录并重命名为 bbb
    • cp -r aaa bbb:递归复制,可以复制文件夹
  • mv:移动、如果需要可以重命名
    • mv a.txt bbb:若存在 bbb 目录,则是移动 a.txt 到 bbb,否则就是将 a.txt 重命名为 bbb
    • mv aaa bbb:移动文件夹,不需要加 -r 参数
  • rm:删除
    • rm a.txt:询问删除 a.txt
    • rm -f a.txt:不询问删除 a.txt
    • rm -rf aaa:不询问递归删除 aaa,aaa 可以删除文件夹
    • rm -r aaa:询问递归删除 aaa,aaa 可以删除文件夹
  • tar:打包、解包
    • tar -cvf a.tar apache-tomcat-7.0.57:打包
    • tar -zcvf b.tar.gz apache-tomcat-7.0.57:打压缩包
    • tar -xvf a.tar:解包,工作目录下会还原出 apache-tomcat-7.0.57 目录以及里面的文件
    • tar -xvf a.tar -C aaa:解包,工作目录/aaa目录下会还原出 apache-tomcat-7.0.57 目录以及里面的文件
    • tar -zxvf b.tar.gz:解压缩包,工作目录下会还原出 apache-tomcat-7.0.57 目录以及里面的文件
    • tar -zxvf b.tar.gz -C aaa:解压缩包,工作目录/aaa下会还原出 apache-tomcat-7.0.57 目录以及里面的文件

输出重定向 >,>>

  • 覆盖:ifconfig > ipconfig.txt
  • 追加:ifconfig >> ipconfig.txt

管道 |

管道是linux命令中一个重要的概念,其作用是将一个命令的输出用作另一个命令的输入。

  • ls --help | more:分页查询帮助信息
  • ps -ef | grep java:查找某一进程

系统管理

  • ps -ef:查看所有进程
  • ps -ef | grep java:查找某一进程
  • kill 6020:杀死 PID 为 6020 的进程
  • kill -9 6020:强制杀死 PID 为 6020 的进程

权限

引入

  1. cd /etc
  2. ll

    drwxr-xr-x.  3 root root   4096 Aug 15 02:14 abrt
    drwxr-xr-x.  4 root root   4096 Aug 15 02:21 acpi
    -rw-r--r--.  1 root root     44 Aug 15 02:27 adjtime
    

每一行的前 10 个字符可以分为四组: - --- --- ---,分别表示文件类型,文件所有者具有该文件的权限,文件所有组具有该文件的权限,其他用户具有该文件的权限。

文件类型

  • d:目录文件
  • -:普通文件
  • l:软链接文件(可以认为是 Windows 中的快捷方式)

权限类型

  • r:可读,也可以用数字 4 表示
  • w:可写,也可以用数字 2 表示
  • x:可执行,也可以用数字 1 表示

对于普通文件和目录文件,读写执行表示不同的含义。

对于普通文件:

权限名称可执行操作
r 可以使用 cat 查看文件的内容
w 可以修改文件的内容
x 可以将其运行为二进制文件

对于目录文件

权限名称可执行操作
r 可以查看目录下列表
w 可以创建和删除目录下文件
x 可以使用 cd 进入目录

修改权限

  • chmod u=rwx,g=rx,o=rx a.txt
  • chmod 755 a.txt

清屏

  • clear
  • ctrl + l
posted @ 2020-08-24 16:06  学习java进行时  阅读(91)  评论(0编辑  收藏  举报