这样看Linux

1、 快捷键
Tab键 进行命令提示
Ctrl+c 强行终止当前程序,且不退出终端
Ctrl+d 退出终端
Ctrl+s 暂停当前程序,暂停后按任意键恢复运行
Ctrl+a 将光标移至输入行头,相当于Home键
Ctrl+e 将光标移至输入行末,相当于End键
Ctrl+k 删除从光标所在位置到行末

2、Shell常用通配符
* 匹配0或多个字符
?匹配任意一个字符
[list] 匹配list中的任意单一字符
[^list] 匹配除list中的任意单一字符以外的字符
[c1-c2] 匹配c1-c2中的任意单一字符 如[0-9] [a-z]
{String1,String2,…}匹配String1或String2(或更多)其一字符串
{c1…c2} 匹配c1-c2中全部字符 如{1…10}

3、在Linux环境中,如果遇到困难,可以使用man命令,它是Manual Pages的缩写。

通过man命令查询后,手册部分内容如下:
NAME(名称)
该命令过函数的名称,接着是一行简介
SYNOPSIS(概要)
对于命令,正式的描述它如何运行,以及需要什么样的
命令行参数。对于函数,介绍函数所需要的函数,以及哪
个头文件包含该函数的定义。
DESCRIPTION(说明)
命令或函数功能的文本描述。
SEE ALSO(参见)
相关命令或函数的列表

4、查看当前登录用户的用户名: whoami

创建一个lilei的用户: sudo adduser lilei
删除一个lilei的用户:sudo deluser lilei --remove-home

5、用户组

在 Linux 里面每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,
它们共享一些资源和权限,同时拥有私有资源,就跟家的形式差不多,
你的兄弟姐妹(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),
爸妈对待你们都一样(共享权限),你偶尔写写日记,其他人未经允许不能查看(私有资源和权限)。
当然一个用户是可以属于多个用户组的,正如你既属于家庭,又属于学校或公司。

查看命令: group shiyanlou
其中冒号之前表示用户,后面表示该用户所属的用户组

6、 ls 命令是列出并显示当前目录下的文件
ls -l 命令是用较长格式列出文件
使用 pwd 命令可以获取当前所在路径(绝对路径)。

在这里插入图片描述图片来自:https://doc.shiyanlou.com/linux_base/3-9.png/wm
在这里插入图片描述图片来自:https://doc.shiyanlou.com/linux_base/3-10.png/wm

7、变更文件所有者命令:
将文件iPhone6变更给用户shiyanlou所有: sudo chown shiyanlou iphone6

8、文件目录图

FHS(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准)
FHS 定义了两层规范,第一层是, / 下面的各个目录应该要放什么文件数据,
例如 /etc 应该放置设置文件,/bin 与 /sbin 则应该放置可执行文件等等。
第二层则是针对 /usr 及 /var 这两个目录的子目录来定义。
例如 /var/log 放置系统日志文件,/usr/share 放置共享数据等等。

点击链接查看图片:https://doc.shiyanlou.com/linux_base/4-1.png/wm

9、Linux文件的操作

创建目录:使用 mkdir(make directories)命令可以创建一个空目录
复制文件:使用 cp(copy)命令复制一个文件到指定目录
删除文件:使用 rm(remove files or directories)命令删除一个文件
删除目录:跟复制目录一样,要删除一个目录,也需要加上 -r 或 -R 参数。 如:rm -r family
移动文件:使用 mv(move or rename files)命令移动文件(剪切)。 格式: mv 源目录文件 目的目录
重命名文件:格式: mv 旧的文件名 新的文件名
批量重命名:使用rename和正则表达式
查看文件:使用 cat,tac 和 nl 命令查看文件,前两个命令都是用来打印文件内容到标准输出(终端),其中 cat 为正序显示,tac 为倒序显示。
nl 命令,添加行号并打印,这是个比 cat -n 更专业的行号打印命令。
查看文件类型:在 Linux 中文件的类型不是根据文件后缀来判断的,我们通常使用 file 命令查看文件的类型

10、使用Linux内部的vim教程命令: vimtutor

11、读取变量的值,使用 echo 命令和 $ 符号。例如: echo $tmp 是查看tmp的值

12、set,env,export。这三个命令很相似,都是用于打印环境变量信息,区别在于涉及的变量范围不同。

命 令 说 明
set 显示当前 Shell 所有变量,包括其内建环境变量(与 Shell 外观等相关),用户自定义变量及导出的环境变量。
env 显示与当前用户相关的环境变量,还可以让命令在指定环境中运行。
export 显示从 Shell 中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量。

13、与搜索相关的命令常用的有 whereis,which,find 和 locate 。

14、cd /home/shiyanlou
zip -r -q -o shiyanlou.zip /home/shiyanlou/Desktop
上面命令将目录 /home/shiyanlou/Desktop 打包成一个文件。
第一行命令中,-r 参数表示递归打包,包含子目录的全部内容,-q 参数表示为安静模式,即不向屏幕输出信息,-o,表示输出文件,需在其后紧跟打包输出文件名。

unzip shiyanlou.zip 将shiyanlou.zip解压到当前目录
unzip -q shiyanlou.zip -d ziptest 使用安静模式,将文件解压到指定目录

常用命令
zip:
打包 :zip something.zip something (目录请加 -r 参数)
解包:unzip something.zip
指定路径:-d 参数
tar:
打包:tar -cf something.tar something
解包:tar -xf something.tar
指定路径:-C 参数

15、内建命令与外部命令

内建命令实际上是 shell 程序的一部分,其中包含的是一些比较简单的 Linux 系统命令,这些命令是写在bash源码的builtins里面的,
由 shell 程序识别并在 shell 程序内部完成运行,通常在 Linux 系统加载运行时 shell 就被加载并驻留在系统内存中。
而且解析内部命令 shell 不需要创建子进程,因此其执行速度比外部命令快。比如:history、cd、exit 等等。

外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调入内存。虽然其不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。外部命令是在 Bash 之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin等等。比如:ls、vi等。

使用type命令查看是什么命令。 例如 type exit, type vim, type ls等
#得到这样的结果说明是内建命令,正如上文所说内建命令都是在 bash 源码中的 builtins 的.def中
xxx is a shell builtin
#得到这样的结果说明是外部命令,正如上文所说,外部命令在/usr/bin or /usr/sbin等等中
xxx is /usr/bin/xxx
#若是得到alias的结果,说明该指令为命令别名所设定的名称;
xxx is an alias for xx --xxx

16、当自己刚知道了一个软件,想下载使用,需要确认软件仓库里面有没有,就需要用到搜索功能了,命令如下:
sudo apt-cache search softname1 softname2 softname3……
apt-cache 命令则是针对本地数据进行相关操作的工具,search 顾名思义在本地的数据库中寻找有关 softname1 softname2 …… 相关软件的信息

17、娱乐一下
调出两个眼睛:xeyes
数字雨:先安装 sudo apt-get update; sudo apt-get install cmatrix,后输入cmatrix
cmatrix -C red 改变颜色
火炉效果:sudo apt-get install libaa-bin
aafire

sudo apt-get update
sudo apt-get install bb
/usr/games/bb

这是我在实验楼网站练习后整理的,网址是: https://www.shiyanlou.com/courses/1

猜你喜欢

转载自blog.csdn.net/qq_42524288/article/details/103727757