系统集成02-命令行基础
系统集成02-命令行基础
1 Linux命令行基础知识
1.1 Linux的GUI与CLI
- GUI,GraphicalUserInterface,图形用户界面。用户界面的所有元素图形化,主要使用鼠标作为输入工具,使用按钮、菜单、对话框等进行交互,追求易用
- CLI,CommandLineInterface,命令行界面。用户界面字符化,使用键盘作为输入工具,输入命令、选项、参数执行程序,追求高效
为什么要使用Linux命令行?
- 命令行更高效
- Linux系统中使用键盘操作速度要比鼠标更快。
- 图形化界面不可重复,而命令行可以编写的脚本完成所有过程(例如:删除过期日志文件)
- 图形化界面开销大
- 运行图形化界面会占用很多的系统资源,运行命令行可以让系统资源释放给它更应该做的事情
- 命令行有时候是唯一的选择
- 大部分服务器操作系统不会安装图形界面(GUI)
- 联网设备的维护管理工具本来就没有图形化界面供我们使用
1.2 Linux命令语法格式
命令格式: 命令 [选项] [参数]
注意:
- 个别命令使用不遵循此格式,[]符号内表示非必选项。
- 当有多个选项时,可以写在一起, 比如选项-a和选项-l能合并为-al, 但是要注意参数
- 简化选项(一个-)与完整选项(两个--),比如ls-a等于ls--all
1.3 Linux命令行操作技巧
- Tab键补全:可以用来自动补全命令或文件名,省时准确
- 未输入命令状态下,连按两次tab键列出所有可用命令
- 已输入部分命令名或文件名,按tab键自动补全
- 光标
- up方向键上(可以调出输入历史执行记录,快速执行命令)
- down方向键下(配合up选择历史执行记录)
- Home移动光标到本行开头
- Ctrl+A移动光标到行首
- Ctrl+E移动光标到行尾
- Ctrl+C终止当前程序
- Ctrl+L清理屏幕显示
1.4 Linux命令分类
分类 | 命令 |
---|---|
登录和电源管理 | login、shutdown、halt、reboot、install、exit、last等 |
文件处理 | file、mkdir、grep、dd、find、mv、ls、diff、cat、ln等 |
系统管理 | df、top、free、quota、at、ip、kill、crontab等 |
网络操作 | ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger等 |
系统安全 | passwd、su、umask、chgrp、chmod、chown、chattr、sudops、who等 |
其它 | tar、unzip、gunzip、unarj、mtools、man |
2 文件目录结构
在Linux操作系统中,一切皆是文件, Linux的文件目录结构是树形,“/”称为根目录
2.1 Linux主要目录的用途
目录名 | 主要存放文件及其用途 |
---|---|
/bin | bin是Binary(二进制)的缩写, 这个目录存放着最经常使用的命令 |
/boot | 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件 |
/dev | dev是Device(设备)的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的 |
/etc | 这个目录用来存放所有的系统管理所需要的配置文件和子目录 |
/lib | 这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库 |
/mnt | 系统提供该目录是为了让用户临时挂载别的文件系统的 |
/opt | 这是给主机额外安装软件所摆放的目录 |
/proc | 系统内存映射的虚拟目录,可以通过直接访问这个目录来获取系统信息 |
/root | 该目录为系统管理员,也称作超级权限者的用户主目录 |
/sbin | s就是SuperUser的意思,这里存放的是系统管理员使用的系统管理程序 |
/srv | 该目录存放一些服务启动之后需要提取的数据 |
/tmp | 这个目录是用来存放一些临时文件的 |
/usr | 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows/user下的program files目录,其中/usr/bin是系统用户使用的应用程序;/usr/sbin是超级用户使用的比较高级的管理程序和系统守护程序;/usr/src是内核源代码默认的放置目录。 |
/var | 习惯将那些经常被修改、不断扩充的目录放在这个目录下,包括各种日志文件 |
/run | 是一个临时文件系统,存储系统启动以来的信息,当系统重启时被清理或删除 |
2.2 Linux文件路径
在用shell或调用应用程序的时,都要写明被调用的程序路径
路径分为绝对路径和相对路径
- 绝对路径:在Linux中,绝对路径是从/(也被称为根目录)开始的,如果一个路径是从/开始的,那一定是绝对路径
- 相对路径:相对路径就是相对当前所在目录来说的路径
3 Linux基础命令
3.1 登录命令
命令 | 备注 |
---|---|
login | login的作用是登录系统,使用权限是所有用户 |
last | 显示近期用户或终端的登录情况,使用权限是所有用户, 查看log可以获知谁曾经或企图连接系统 |
exit | 作用是退出系统,它的使用权限是所有用户 |
命令介绍补充
-
login
-
如果选择用命令行模式登录Linux的话,看到的第一个Linux命令就是login
-
每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换
-
虚拟控制台的切换通常可以通过按下Alt键和一个功能键来实现,通常使用F1-F6
-
命令选项参数
这里只展示有特殊选项的命令
- last
- -n:指定输出记录的条数。
- -t tty:只显示指定的虚拟控制台上登录情况。
- -y:显示记录的年、月、日。
- -ID:知道查询的用户名。
- -x:显示系统关闭、用户登录和退出的历史
3.2 电源管理命令
命令 | 备注 |
---|---|
showdown | shutdown命令可以安全地将系统关机 |
halt | halt命令的作用是关闭系统,使用权限是超级用户 |
reboot | 重新启动计算机,使用权限是系统管理者 |
命令介绍补充
- showdown
- Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进
程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备 - 在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要
关闭,并且login指令会被冻结,即新的用户不能再登录
- Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进
命令选项参数
- halt
- -n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块
- -w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)记录
- -f:没有调用shutdown,而强制关机或重启
- -i:关机(或重启)前,关掉所有的网络接口
- -f:强迫关机,不呼叫shutdown这个指令
- -d:关闭系统,但不留下纪录
- reboot
- -n: 保存数据后再重新启动系统。
- -w: 并不会真的重开机,只是把记录写到/var/log/wtmp文件里。
- -d: 不把记录写到/var/log/wtmp文件里(-n这个参数包含了-d)
- -i:关闭网络设置之后再重新启动系统
3.3 文件管理命令
命令 | 备注 |
---|---|
pwd | 用于打印出当前的工作目录 |
cd | 用于改变当前工作目录 |
ls | 列出目录的内容,或者文件的信息,该命令的输出结果默认按照文件名排序 |
mkdir | 用于创建目录(文件夹) |
touch | 用于创建空文件或修改文件的时间戳 |
cp | cp命令用于复制文件或者目录,可以一次复制单个文件,也可以一次复制多个文件(cp命令属于高危命令,使用不慎就会有丢失数据的危险) |
mv | 用于移动件或者目录(高危命令), 如果原文件和目标文件在同一个父目录里面,则mv命令的效果就相当于给文件改名 |
rm | 用于删除文件或者目录(高危命令) |
cat | 用于读取文件的全部内容,或者将几个文件合并为一个文件 |
head | 用来显示文件的开头内容,默认head命令打印其相应文件的开头10行 |
tail | 用于读取文件的尾部 |
more | more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按b键就会往回(back)一页显示,而且还有搜寻字串的功能。more命令从前向后读取文件,因此在启动时就加载整个文件。 |
less | 读取内容,分屏显示,less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件 |
find | 用来在指定目录下查找文件,可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件 |
locate | 会先建立一个文件名及路径的数据库,查找时去这个数据库内查询, 从而达到快速的查找文件系统内是否有指定的文件的效果 |
which | 在PATH所指定的目录中查找可执行文件, 使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令 |
gzip | 一个对文件进行压缩和解压缩的命令 |
tar | 命令可用于打包文件,把多个文件打到一个包中,方便数据的移动 |
ln | 命令用于创建链接文件, 包括软链接和硬链接, 默认为硬链接 |
命令详细介绍
-
pwd
- -L 目录连接链接时,输出连接路径
- -P 输出物理路径
-
cd命令语法: cd [dir]
- cd/usr 进入目录/usr中。
- cd.. 进入(退到)上一层目录,两个点代表父目录。
- cd. 进入当前目录
- cd 不带参数,则默认回到家目录。
- cd- 进入前一个目录,适用于在两个目录之间快速切换。
- cd~ 进入家目录
-
ls语法:ls[OPTION]...[FILE]..
- -a 显示所有文件及目录(ls内定将文件名或目录名称开头为“.”的视为隐藏档,不会列出)
- -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
- -t 将文件依建立时间之先后次序列出
- -R 若目录下有文件,则以下之文件亦皆依序列出
-
mkdir语法: mkdir [OPTION] ... DIRECTORY ...
-
cp语法:cp [OPTION] ... SOURCE ... DIRECTORY
- -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容
- -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中
- -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件
- -l:不复制文件,只是生成链接文件
-
mv语法:mv [选项] 源文件或目录目标文件或目录
- -b:若需覆盖文件,则覆盖前先行备份
- -f:force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i:若目标文件(destination)已经存在时,就会询问是否覆盖
- -u:若目标文件已经存在,且source比较新,才会更新(update)
-
rm语法:rm [OPTION] file/dir
- -f,--force 忽略不存在的文件,从不给出提示
- -i,--interactive 进行交互式删除
- -r,-R,--recursive 指示rm将参数中列出的全部目录和子目录均递归地删除
- -v,--verbose 详细显示进行的步骤
-
cat语法:cat [OPTION] [FILE]
- -A,--show-all 等价于–vET。
- -b,--number-nonblank 对非空输出行编号。
- -E,--show-ends 在每行结束处显示$。
- -n,--number 对输出的所有行编号, 由1开始对所有输出的行数编号
-
head语法:head [OPTION] [FILE]
- -q 隐藏文件名
- -v 显示文件名
- -c <字节> 显示字节数
-
tail语法:tail [OPTION] ... [FILE] ...
- -f 循环读取。
- -q 不显示处理信息。
- -v 显示详细的处理信息。
- -c <数目> 显示的字节数。
- -n <行数> 显示行数。
-
more语法:more [OPTION] ... [FILE] ...
- +n 从笫n行开始显示。
- -n 定义屏幕大小为n行。
- +/pattern 在文件显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示。
- -c 从顶部清屏,然后显示
-
使用more命令在读取文件信息时,可以进行交互操作
- Enter 向下n行,需要定义。默认为1行。
- Ctrl+F 向下滚动一屏。
- 空格键 向下滚动一屏。
- Ctrl+B 返回上一屏。
- = 输出当前行的行号。
- V 调用vi编辑器。
- ! 命令调用Shell,并执行命令。
- q 退出more
-
less语法:less [OPTION] ... [FILE] ...
- /字符串:向下搜索“字符串”的功能。
- ?字符串:向上搜索“字符串”的功能。
- Q: 退出less命令。
- 空格键: 滚动一页。
- 回车键: 滚动一行
-
find常用语法:find [path...] [expression]
- -name 按照文件名查找文件。
- -perm 按照文件权限来查找文件。
- -user 按照文件属主来查找文件。
- -mtime -n +n 按照文件的更改时间来查找文件
-
locate语法:locate [OPTION] PATTERN
- -e 将排除在寻找的范围之外
- -f 将特定的文件排除在外
- -r 使用正规运算式做查找条件
- -o 指定文件的名称
- -d 指定文件的路径
-
which语法:which [options] program name [...]
-
gzip语法:gzip [参数] [文件或者目录]
- -d 或--decompress或----uncompress 解开压缩文件
- -f 或--force 强行压缩文件,不理会文件名是否存在以及该文件是否为符号连接
- -l 或--list 列出压缩文件的相关信息
- -r 或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理
- -v 或--verbose 显示指令执行过程
-
tar语法:tar [OPTION...] [FILE]
- -c 建立新的压缩文件
- -x 从压缩的文件中提取文件
- -t 显示压缩文件的内容
- -z 支持gzip解压文件
- -j 支持bzip2解压文件
- -v 显示操作过程
-
ln语法:ln [-f|-n] [-s] SourceFile [TargetFile]
- -b 删除,覆盖以前建立的链接。
- -d 允许超级用户制作目录的硬链接。
- -f 强制执行。
- -i交互模式,文件存在则提示用户是否覆盖。
- -n 把符号链接视为一般目录。
- -s 软链接(符号链接)
3.4 帮助命令
命令 | 备注 |
---|---|
man | 查看文档手册(manual),分为9类 |
help | 获取帮助 |
命令详细介绍
-
man查看的文档手册
序号 内容 1 使用者在shell中可以操作的指令或程序 2 系统核心可调用的函数与工具等 3 一些常用的函数(function)与函数库(library) 4 设备文档的说明,通常是在/dev下的文件 5 文件格式和约定 6 游戏(games) 7 杂项(包括宏和惯例) 8 系统管理命令(通常仅适用于root用户) 9 内核例程(非标准) -
help语法: help [选项] [命令]
- -d 显示命令简短主题描述
- -s 显示命令简短语法描述
本文来自博客园,作者:Qurare,严禁转载至CSDN平台, 其他转载请注明原文链接:https://www.cnblogs.com/konjac-wjh/p/17377852.html