还觉得linux命令难吗,看这篇2w多字的linux命令详解,通俗易懂

还觉得linux命令难吗,看这篇2w多字的linux命令详解,通俗易懂

 

序言

 本篇文章主要讲解了一些linux常用命令,主要讲解模式是,命令介绍、命令参数格式、命令参数、命令常用参数示例。由于linux命令较多,我还特意选了一些日常使用较为频繁的命令进行讲解,但还是免不了文章很长,建议大家收藏起来,用到的时候不会了再来阅读。当然学习linux命令最好的方法是学会使用linux自带的man手册,所有linux命令规范和使用细则都会在该手册中讲解的很清楚,我在书写的过程中也是参考该手册和日常使用情况。

如果还有哪些是大家希望再补充的命令,可以留言给我,我会持续更新该文章,同时也作为我学习和工作的手册。

Linux初级指令

ls ——List

ls 介绍

 这是我学Linux的第一个命令,相信也是很多人学习Linux的第一个命令。ls全称list.

列出有关文件的信息(默认为当前目录)。如果没有指定-cftuvSUX或——Sort,则按字母顺序排序。

 官方的说的很清楚,默认列出当前目录,所以可以列出其他目录或者路径下的文件信息或者目录信息。

 ls还可以列出指定目录下的文件列表。

还觉得linux命令难吗,看这篇2w多字的linux命令详解,通俗易懂

 

ls命令参数

  • -a 列出指定目录下的所有文件,包括隐藏文件
  • -c 使用最后一次更改文件状态以进行排序(-t)或长时间打印(-l)的时间
  • -h 与-l选项一起使用时,请使用单位后缀:Byte、Kilobyte、mete、gb、tb和Petabyte,以便使用以2为基数的大小将数字减少到3或更少
  • -l 长格式列表。(见下文)。如果输出到终端,则所有文件大小的总和将输出到长清单前面的一行中
  • -n 以数字形式显示用户和组id,而不是在长(-l)输出中转换为用户或组名。这个选项默认打开-l选项
  • -o 以长格式列出,但省略组id
  • -s 显示每个文件实际使用的文件系统块的数量,以512字节为单位,其中部分单元四舍五入为下一个整数值
  • -t 在按照字典顺序对操作数排序之前,先按修改的时间排序(最近修改的是first)
  • -u 使用最后一次访问的时间,而不是最后一次修改文件进行排序

pwd介绍

 打印当前工作目录的完整路径名。

touch (change file timestamps)

touch介绍

 将每个文件的访问和修改时间更新为当前时间。除非提供-c或-h,否则将不存在的FILE参数创建为空。

touch命令参数

  • -a 或--time=atime或--time=access或--time=use 只更改存取时间。
  • -c 或--no-create 不建立任何文档。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或--time=mtime或--time=modify 只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间。cat介绍

将FILE或标准输入连接到标准输出。

cat命令参数

  • -A, --show-all 等价于 -vET
  • -b, --number-nonblank 对非空输出行编号
  • -e 等价于 -vE
  • -E, --show-ends 在每行结束处显示
  • -n, --number 对输出的所有行编号,由1开始对所有输出的行数编号
  • -s, --squeeze-blank 有连续两行以上的空白行,就代换为一行的空白行
  • -t 与 -vT 等价
  • -T, --show-tabs 将跳格字符显示为 ^I
  • -u (被忽略)
  • -v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
$tactest
-e等价于-vE
-b,--number-nonblank对非空输出行编号
-A,--show-all等价于-vET

mkdir —— Make Directory

mkdir介绍

如果目录不存在,则创建目录。

mkdir命令参数

  • -m, --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask
  • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
  • -v, --verbose 每次创建新目录都显示信息
  • --help 显示此帮助信息并退出
  • --version 输出版本信息并退出

cd介绍

 切换当前目录至指定目录

 cd命令没什么参数就是切换目录到指定路径下,较为简单,但是使用评率极高。

rm&rmdir —— Remove Directory

rm介绍

rm实用程序尝试删除命令行上指定的非目录类型文件。 如果文件的权限不允许写入,并且标准输入设备是终端,则会提示用户(在标准错误输出上)进行确认。

 rm命令使用时还是需要注意的,他的删除恢复比较麻烦,有些系统会自带-i参数,输入命令之后还有一个确认步骤,有些是直接删掉了,是真删掉,从内存抹掉那种(其实底层是让该文件指针不指向该文件的内存块,内存上的内容原则上是存在的,但是恢复会比较复杂,需要扫描整块内存块才能拿到内容)。不要轻易删掉你写的重要代码,hh。

rm命令参数

  • -f, --force 忽略不存在的文件,从不给出提示。
  • -i, --interactive 进行交互式删除
  • -r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
  • -d, --dir 删除空目录

mv —— Move

mv介绍

就是移动目录或者文件到置顶目录下,同时具有重命名的功能。

mv命令参数

  • -b :若需覆盖文件,则覆盖前先行备份。
  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖
  • -n:不要覆盖现有文件。 (-n选项将覆盖以前的任何-f或-i选项。)
  • -u :若目标文件已经存在,且 source 比较新,才会更新(update)

 这个命令在写makefile文件的时候用起来很舒服,可以把编译的结果移到指定目录并重命名。

cp —— Copy

cp介绍

cp实用程序将source_file的内容复制到target_file。 在第二个大纲格式中,每个命名的source_file的内容都复制到目标target_directory。 文件本身的名称不会更改。 如果cp检测到尝试将文件复制到自身的尝试,则复制将失败。

命令参数

  • -a, --archive 等于-dR --preserve=all
  • --backup[=CONTROL 为每个已存在的目标文件创建备份
  • -b 类似--backup 但不接受参数
  • --copy-contents 在递归处理是复制特殊文件内容
  • -d 等于--no-dereference --preserve=links
  • -f, --force 如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)
  • -i, --interactive 覆盖前询问(使前面的 -n 选项失效)
  • -H 跟随源文件中的命令行符号链接
  • -l, --link 链接文件而不复制
  • -L, --dereference 总是跟随符号链接
  • -n, --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)
  • -P, --no-dereference 不跟随源文件中的符号链接
  • -p 等于--preserve=模式,所有权,时间戳
  • --preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),如果
  • ​ 可能保持附加属性:环境、链接、xattr 等
  • -R, -r, --recursive 复制目录及目录内的所有项目

echo

echo介绍

echo实用程序将任何指定的操作数写入标准输出,这些操作数由单个空格()字符分隔,后跟换行符(\ n')字符。

这条命令较为简单,常用来打印变量、文本内容到

$PWD 是取当前路径,然后echo到标准输出,一般echo $name 用来查看某个环境变量的值

head&tail

head介绍

此过滤器显示每个指定文件或标准输入(如果未指定文件)的前几行或字节。

如果省略count,则默认为10.如果指定了多个文件,则每个文件的头均由字符串==> XXX <==''组成,其中XXX''为文件名 文件。

tail命令完全和他相反,是从尾部开始展示文本,但是他的参数用法更多。

  • -f 循环读取
  • -q 不显示处理信息
  • -v 显示详细的处理信息
  • -c<数目> 显示的字节数
  • -n<行数> 显示行数
  • --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
  • -q, --quiet, --silent 从不输出给出文件名的首部
  • -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

tail和head命令经常用来查看日志,像我现在基本每天都会用,我的日志文件没办法用vim或者cat这样去看(因为我负责的业务日志量每天都是几十个G),要么用tail,要么用more&less(下面会讲)。

more&less

more介绍

more每次打开文件不是全部把文件读入内存而是流式读取,不会因为vi|vim某个大文件而造成系统oom。

more&less最重要的一点就是流式读取,支持翻页,像cat命令是全部读取输出到标准输出,如果文件太大会把屏幕刷满的,根本没办法看。

more命令参数

  • +n 从笫n行开始显示
  • -n 定义屏幕大小为n行
  • +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
  • -c 从顶部清屏,然后显示
  • -d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
  • -l 忽略Ctrl+l(换页)字符
  • -p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
  • -s 把连续的多个空行显示为一行
  • -u 把文件内容中的下划线去掉

less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件

wc

wc介绍

wc实用程序显示每个输入文件或标准输入(如果未指定文件)中每个输入文件中包含的行数,字数和字节数。 一行定义为由字符分隔的字符串。 最后一个字符之后的字符将不包括在行数中。

这条命令对我来说还是比较深刻的,我刚学习编程不久的时候,我感觉我写的代码很多了,那个时候我就很想知道我写了多少行代码了,一时兴起,说干就干,直接写了个程序去统计了一把,写完之后还感觉自己蛮厉害的,谁知道之后学习到这个wc,然后就觉得自己还是嫩了点,还是要多学习。

wc命令参数

  • -c 统计字节数。
  • -l 统计行数。
  • -m 统计字符数。这个标志不能与 -c 标志一起使用。
  • -w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
  • -L 打印最长行的长度。

date & cal

date介绍

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值