快乐的shell命令行
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
快乐的shell命令行
PART1——基础
1.权限
#
超级用户权限$
普通用户
2.复制粘贴
- 复制鼠标左键沿着文本拖动高亮的文本被复制到X管理的缓冲区或者双击一个单词
- 粘贴鼠标中键
3.简单命令
- 时间和日期
date
- 当前月份的日历
cal
- 磁盘剩余空间的数量
df
- 空闲内存的数量
free
- 结束终端
exit
- 打印
PART2——文件
目录
-
系统程序安装目录
/usr/bin
-
家目录
~
~ | 家目录 |
---|---|
/ | 根目录 |
/bin | 系统启动和运行必须的二进制程序 |
/boot | Linux内核、初始RAM磁盘映像和启动加载程序 |
/dev | 设备节点内核在此目录维护所有设备的列表 |
/etc | 系统层面的配置文件包含一系列的shell脚本/etc/crontab,定义自动运行的任务/etc/passwd用户账号列表 |
/lib | 核心系统程序所使用的共享库文件Windows中的动态链接库 |
/media | 可移动介质的挂载点 |
/mnt | 早些linux系统中的可移动介质的挂载点 |
/opt | 安装可选软件 |
/proc | 一个由Linu系统维护的虚拟文件系统 |
/sbin | 为超级用户保留的系统二进制文件 |
/usr | 普通用户所需要的所有程序和文件 |
/usr/bin | 系统安装的可执行程序 |
/usr/lib | /usr/bin中程序的共享库 |
/usr/local | 通常由源码编译的程序回安装在/usr/local/bin下 |
PART3——系统
ls
选项 | 长选项 | 描述 |
---|---|---|
-a | –all | 列出所有文件包括隐藏文件 |
-l | 以长格式显示结果 | |
-t | 按照修改时间排序 | |
-h | –human-readable | 当以长格式列出时以人们可读的方式展示 |
-d | –directory | 可以看到目录的详细信息 |
-r | –reverse | 以相反的顺序显示结果ls通常是按字母升序排列 |
-S | 按文件大小来排序 | |
-F | –classify | 如果名字是目录名则会加上一个‘/’字符 |
file
打印文件内容的简单描述
less
页面调度器类程序
less filename
命令 | 行为 |
---|---|
PageUp、b | 向上翻滚一页 |
PageDown、space | 向下翻滚一页 |
UpArrow | 向上一行 |
DownArrow | 向下一行 |
q | 退出 |
h | 显示帮助屏幕 |
G | 移动到最后一行 |
g | 移动到第一行 |
/charates | 向前查找指定的字符串 |
n | 向前查找下一个出现的字符串之前指定的 |
符号链接
PART4 操作文件与目录
- cp
- mv
- mkdir
- rm
- ln
4.1 通配符
通配符 | 描述 |
---|---|
匹配一个字符 | |
* | 匹配多个字符0个或者多个 |
[characters] | 匹配任意一个属于字符集中的字符 |
[!characters] | 匹配任意一个不属于字符集中的字符 |
[[:class:]] | 匹配任意一个属于字符类中的字符 |
4.1.1 字符类
字符类 | 描述 |
---|---|
[:alnum:] | 字母或数字 |
[:alpha:] | 字母 |
[:digit:] | 数字 |
[:lower:] | 小写 |
[:upper:] | 大写 |
以ls
命令为例
ls *
所有文件ls g*
以g开头的所有文件ls g???
以g开头后面紧跟三个字符的文件ls [abc]*
以a或b或c开头的文件ls abs[0-9][0-9][0-9]
以abc开头后面紧跟三个数字的文件[[:alpha:]]*
以字母开头的所有文件[![digit]]*
不是以数字开头的所有文件*[[:lower:]123]
以小写字母或1或2或3结尾的文件
4.2 复制cp
cp file dir
将文件复制到dir中
-a
复制其所有权和权限-i
重写已存在文件前提示用户确认-u
仅复制目标目录中不存在的文件-r
递归复制目录以及目录中的内容目录复制时使用-v
显示过程
4.3 移动mv
-i
重写已存在文件前提示用户确认-u
仅移动目标目录中不存在的文件-v
显示过程
4.4 删除rm
-i
删除已存在文件前提示用户确认-r
递归删除-v
显示过程-f
忽视不存在的文件覆盖-i
4.5 创建连接ln
ln file link
创建硬链接ln -s file link
创建软连接
PART5 使用命令
which
显示一个可执行程序的位置help
显示shell内建命令的帮助文档--help
显示用法信息man
显示程序手册页
5.1 创建命令别名alias
- 使用方式
alias name='string'
- 尝试名字是否被占用
type name
- 创建别名
alias foo='cd /etc;ls;cat passwd'
- 删除别名
unalias foo
PART6 重定向
- cat
- sort
6.1 输出重定向
6.1.1 标准输出重定向 >
ls -l /usr > ls_output.txt
> ls_output.txt
删除其中的内容因为每次重定向都是从头写入ls -l /usr >> ls_output.txt
每次重定向续写
6.1.2 标准错误重定向 2>
标准输入、输出和错误 shell 内部分别将其称为文件描述符 0、 1 和 2
ls -l /bin/123 2> ls_output.txt
文件描述符 “2”紧挨着放在重定向操作符之前来执行重定向标准错误到文件 ls-error.txt任务
6.1.3 重定向标准输出和错误 &>
ls -l /usr/bin > ls_output.txt 2>&1
或者
ls -l /usr/bin &> ls_output.txt
两个重定向。首先重定向标准输出到文件 ls-output.txt然后重定向文件描述符 2标准错误到文件描述符 1标准输出使用表示法 2>&1。 顺序不能错
6.1.4 处理不需要的输出 /dev/null
ls -l /usr/bin 2> /dev/null
系统通过重定向输出结果到一个叫做 “/dev/null” 的特殊文件为我们提供了解决问题的方法。这个文件是系统设备叫做位存储桶它可以接受输入并且对输入不做任何处理。
6.2 标准输入重定向
6.2.1 cat
…未完待续