Linux常见指令

常见Linux指令

ls

语法: ls [选项][目录或文件]
功能: 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其它信息
常用选项:

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录像文件一样显示,而不是显示旗下的文件。如 ls -d [目录名]
  • -l 列出文件的详细信息。
  • -k 以k字节的形式表示文件的大小。ls -alk [指定文件]
  • -r 对目录进行反向排序。
  • -t 以时间排序
  • -R 列出所有子目录下的文件

pwd

语法: pwd
功能: 显示用户当前所在的目录

cd

Linux系统中,磁盘上的文件和目录被组成一棵树,每个节点都是目录和文件。
语法: cd [目录名]
功能: 改变工作目录。将工作目录改变到指定的目录下。
举例:

  • cd ... :返回上级目录
  • cd ~ :进入用户家目录
  • cd - :返回最近访问的目录

认识Linux目录结构

Linux是一个树形的目录结构

几个特殊的目录:

  • / 称为根目录
  • . 称为当前目录
  • ... 称为当前目录的上级目录

绝对路径 VS 相对路径

形如: /usr/share/tomcat/logs/ 以根目录开头的,称为绝对路径。
形如: ./logs 以 . 或者 ... 开头的,称为相对路径。

touch

语法: touch [选项]...[文件]...
功能: touch命令参数课更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
举例:

cat

语法: cat [选项][文件]
功能: 查看目标文件内容
常用选项:

  • -n 对输出的所有行编号

mkdir

语法: mkdir [选项][dirname]
功能: 在当前目录下创建一个名为"dirname"的目录
常用选项:

  • -p [路径名称],此时若路径中的某些目录上不存在,加上此选项后,系统将自动建立好哪些尚未存在的目录,即一次可以建立多级目录。

举例:

rm

语法: rm [选项][dirname、dir]
功能: 删除文件或目录
常用选项:

  • -f 即使文件属性为只读(即写保护),亦可以直接删除。
  • -i 删除前逐一询问确认。
  • -r 删除目录及其下所有文件。

举例:

先动手创建如下目录结构:

然后再使用 rm -ri 命令删除 test,观察删除的顺序。

cp

语法: cp [选项][源文件/目录/目标文件/目录]
功能: 复制文件或目录
说明: cp 指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则他会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误。
常用选项:

  • -f 或 -force 强行复制文件或目录,不论目的文件或目录是否存在
  • -i 或 -interactive 覆盖文件之前先询问用户
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理。
  • -R 或 - recursive递归处理,将指定目录下的文件及目录一并处理。

举例:

mv

语法: mv [选项][源文件/目录/目标文件/目录]
功能:

  • 1.视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  • 2.当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可能是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  • 3.当第二个参数是已经存在的名录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

常用选项:

  • -f 或 -force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。
  • -i 或 -interactive 如果目标文件已经存在时,就会询问是否覆盖!

举例:

man

Linux的命令有很多参数,我们不可能全部记住,我们可以通过查看联机手册获取帮助。

语法: mna [选项] 命令
常用选项:

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • man man 能看到man 手册中的若干章节及其含义。

举例:

less

语法: less [参数] 文件
功能: 查看文件内容,不会立刻把所有文件内容加载到内存中,也能进行查找。
常用选项:

  • j k / 方向键:向上向下滚蛋屏幕
  • -N 显示每行的行号
  • / 字符串:向下搜索"字符串"的功能
    n:重复前一个搜索(与 / 或 ?有关)
    q:退出

举例:

tail

语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件,作为输入信息进行处理。常用于查看日志文件。
常用选项:

  • -f 循环读取
  • -n<行数> 显示行数

举例: 有一个文件共有100行内容,请读出第50行内容

关于重定向

Linux 的很多指令,cat head tail 等都是默认输出到"标准输出"中,也就是显示器上,可以通过 > 这样的符号把本来要输出到标准输出上的内容写到特定的文件中,这样的操作称为"重定向"。

重定向有三种方式:

  • 标准输入重定向( < )
  • 标准错误重定向(>)
  • 标准错误重定向(2>),注意2和 > 之间不能有空格

    标准输入,标准输出,标准错误 是三个特殊的文件,每一个进程在启动的时候都会默认打开,分别对应到键盘、显示器、显示器这样的设备;在Java中分别对应到System.in , System.out , System.err

关于管道

管道是一种古老的"进程间通信"方式,在Linux指令中可以使用 | 作为管道标记。

意思是将前一个指令标准输出的内容,作为第二个指令的标准内容。

date

date 指定格式显示时间: date + "%Y-%m-%m-%d %H:%M:%S"
语法: date [OPTION]...[+FORMAT]
1、在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记

  • %H : 小时(00...23)
  • %M : 分钟(00...59)
  • %S : 秒(00...61)
  • %X : 相当于 %H:%M:%S
  • %d : 日 (01...31)
  • %m : 月份 (01...12)
  • %Y : 完整年份 (0000...9999)
  • %F : 相当于 %Y-%m-%d

2、时间戳

时间--->时间戳:date +%s

时间戳--->时间:date -d@1508749502

vim

vim是一个知名的文本编译器,相当于Windows的记事本,只不过功能比记事本强大一些。

1、创建文件/打开文件

vim [文件名]
2、进入插入模式

vim打开文件后默认是普通模式 ,点击 i 键可以进入到插入模式(左下角提示-- INSERT),然后就可以像记事本一样正常编辑了
3、保存

在插入模式下不能保存文件,需要先回到 普通模式,按下 ESC回到普通模式,在普通模式下输入 :w ,再按下回车,即可保存文件。
4、退出

在插入模式下不能退出,需要先回到普通模式。

在普通模式下输入**:q** ,再按下回车,既可以退出。

grep

语法: grep[参数]...[文件]...
功能: 用于查找文件中是否包含字符串,并显示对应行
常用选项:

  • -n<行数> 显示的行数
  • -w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
  • -r 递归查找. 可以搜索多级目录下的所有文件.
  • --color 高亮查找到的结果
  • --include 指定查找某些文件
  • --exclude 指定排除某些文件

举例:

ps

语法: ps[参数]...
功能: 用于查看当前系统上运行的进程
常用选项:

  • a 显示一个终端的所有进程
  • u 以用户为主的格式来显示程序状况
  • x 显示所有程序,不以终端机来区分

举例:

netstat

语法: netstat[参数]
功能: 查看系统上的网络状态
常用选项:

  • -a 显示所有正在或不在侦听的套接字
  • -n 显示数字形式地址而不是去解析主机、端口或用户名
  • -p 显示套接字所属进程的PID和名称

举例:

相关推荐
疯狂的大狗12 分钟前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
XY.散人14 分钟前
初识Linux · 文件(1)
linux·运维·服务器
长天一色27 分钟前
【Docker从入门到进阶】01.介绍 & 02.基础使用
运维·docker·容器
伊玛目的门徒27 分钟前
docker 搭建minimalist-web-notepad
运维·docker·notepad
叶北辰CHINA1 小时前
nginx反向代理,负载均衡,HTTP配置简述(说人话)
linux·运维·nginx·http·云原生·https·负载均衡
不惑_2 小时前
在 Ubuntu 安装 Python3.7(没有弯路)
linux·运维·ubuntu
theo.wu3 小时前
使用Buildpacks构建Docker镜像
运维·docker·容器
玉树临风江流儿3 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
杰哥在此3 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
枫叶丹45 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器