提示符
在linux系统中有两个环境变量用来控制命令行提示符的格式:
① PS1: 默认命令行提示符格式
② PS2:后续命令行提示符格式
bash shell提示符,所有特殊字符都是从反斜线()开始,用户要自定义提示符,需给PS1变量赋一个新的字符串,如:
[sky@linux_host]$="[\w][\T][\u]\%"
~[0:20:30][sky]%
字 符 | 描 述 |
---|---|
\a | 报警字符 |
\d | “日 月 年”格式显示的日期 |
\e | ASCII转义字符 |
\h | 本地主机名 |
\H | 完全限定域名(FQDN) |
\j | shell当前管理的任务数 |
\l | shell的终端设备名中的基名 |
\n | ASCII换行符 |
\r | ASCII回车符 |
\s | shell的名称 |
\t | 24时制HH:MM:SS格式的当前时间 |
\T | 12时制HH:MM:SS格式的当前时间 |
\@ | 24时制am/pm格式的当前时间 |
\u | 当前用户的用户名 |
\v | bash shell的版本 |
\V | bash shell的发行版本 |
\w | 当前工作目录 |
\W | 当前工作目录的基名 |
! | 在bash shell历史记录中的位置 |
# | 在当前命令行的位置 |
$ | 普通用户下的美元符($),root用户下的井号(#) |
\nnn | 与八进制nnn对应的字符 |
\ | 反斜线() |
[ | 开始一个控制字符序列 |
] | 结束一个控制字符序列 |
Linux常用目录结构
目录 | 用途 |
---|---|
/ | 虚拟目录的根目录 |
/bin | 二进制目录,存放GNU用户级工具 |
/boot | 启动目录,存放启动文件 |
/dev | 设备目录,Linux在这里创建设备节点 |
/etc | 系统配置文件目录 |
/home | 主目录,Linux在这里创建用户目录 |
/lib | 库目录,存放系统和应用程序的库文件 |
/media | 媒体目录,存放可以移动媒体设备挂载点 |
/mnt | 挂载目录,另一个存放可移动媒体设备挂载点的地方 |
/opt | 可选目录,通常用于存放可选的软件包 |
/root | 艮目录 |
/sbin | 系统二进制目录,存放许多GNU管理员级工具 |
/tmp | 临时目录,可以在该目录中创建和删除临时工作文件 |
/usr | 用户安装软件的目录 |
/var | 可变目录,用以存放经常变化的文件,比如日志文件等 |
指令入手
man:查看Linux系统上的各指令的使用手册,输入该指令会显示一下各选项字段,具体含义如下:
- Name:显示命令的名称和简介
- Synopsis:显示命令的格式
- Description:描述每个命令的选项
- Author:提供该命令开发人员的信息
- Reports Bugs: 提供提交bug报告的途经
- Copyright: 查看该命令源代码的版权情况
- See Also:推荐查看相似的命令
下图展示了man ls后所查询得到的结果:
文件相关指令
ls:显示当前系统上文件信息
单字母 | 全字 | 功能 |
---|---|---|
-a | –all | 输出包括以“.”打头的隐藏文件 |
-A | –almost-all | 不要输出“.”和“..”文件 |
–author | 输出每个文件的作者 | |
-b | –escape | 输出不可打印字符的八进制值 |
–block-size=size | 按size字节大小的块来计算块大小(块数) | |
-B | –ignore-backups | 不要列出名称中包含波浪线(~)的条目( 波浪线用来表示备份的副本) |
-c | 按最后一次修改时间排序 | |
-C | –color=when | 行业是使用彩色(always,never,auto) |
按列输出条目 | ||
-d | –directory | 列出目录条目而非内容,并且不要跟踪符号连接 |
-F | –classify | 给条目追加文件类型标识符 |
–file-type | hi在部分文件类型(非可执行文件)后追加文件类型标识符 | |
–format=word | 将输出格式化成across(交叉)、commas(逗号)、horizontal(水平)、long(长)、single-column(单列)、verbose(详细)或vertical(垂直) | |
-g | 输出除文件属主之外的所有信息 | |
–group-directories-first | 在文件之前列出所有目录 | |
-G | –no-group | 在长列表输出格式下,不要显示组名 |
-h | –human-readable | 打印大小,K表示千字节,M表示兆字节,G表示G字节 |
–si | 和-h相同,但进率为1000,而非1024 | |
-i | –inode | 显示每个文件的索引值(incode) |
-l | 按长列表输出格式吸纳是 | |
-L | –dereference | 对于链接文件,显示原文件信息 |
-n | –numeric-uid-gid | 显示数字类型的userid和groupid以替代名字 |
-o | 在长列表格式下不显示组名 | |
-r | –reverse | 在输出文件和目录时,反转排序的顺序 |
-R | –recursive | |
-s | –size | 输出每个文件的块大小 |
-S | –sort=size | 按文件的大小输出 |
-t | –sort=time | 按文件的修改时间输出 |
-u | 输出文件的最后访问时间而非最后修改时间 | |
-U | –sort=none | 不要将输出排序 |
-v | –sort=version | 按文件版本排序输出 |
-x | 按行而非列输出条目 | |
-X | –sort=extension | 按文件an扩展名排序输出 |
touch:创建文件
cp:复制文件 cp source destination
参数 | 用途 |
---|---|
-a | 归档文件,并保留它们现有的属性 |
-b | 创建已存在目标文件的备份,而非覆盖他 |
-d | 保留 |
-f | 强制覆盖已存在的目标文件,不提示 |
-i | 在覆盖目标文件之前提示 |
-l | 创建文件链接而非复制文件,硬连接 |
-p | 如果可能保留文件属性 |
-r | 递归的复制文件 |
-R | 递归的复制目录 |
-s | 创建一个符号链接而非复制文件,软连接 |
-S | 覆盖默认的备份文件的后缀,默认是 |
-u | 仅在源文件比目标文件新的情况下复制(相当与更新) |
-v | 详细模式,解释发生了什么 |
-x | 仅限于当前文件系统的复制 |
mv:将文件和目录移动到另外一个位置,可以重命名文件
rm:删除文件,-f 强制删除
创建目录:mkdir
删除目录:rmdir,默认只删除空目录,加–ignore-fail-on-non-empty参数来删除非空目录,rm也可以删除目录,常用rm -rf dir
stat:查看文件系统中某个文件的所有状态信息,例stat text
file: 查看文件类型,如 file text,该命令将文件分成3类
- 文本文件:包含可打印字符的文件
- 可执行文件:可在系统上运行的文件
- 数据文件:包含不可打印二进制字符,又不能在系统上运行的文件
cat:显示文本文件中的数据,-n:给所有显示的行加上行号;-b:只给有文本的行加上行号;-s:将多个空白行压缩到单个空白行;-T:取消制表符的显示
more:显示文本内容,区别在于会在每页数据之后停下来,more命令选项:
选项 | 用途 |
---|---|
H | 显示帮助菜单 |
spacebar | 显示文件文本的下一屏 |
z | 显示文件文本的下一屏 |
ENTER | 显示文件文本的下一行 |
d | 显示文件文本的后面半屏 |
q | 退出程序 |
s | 显示文件文本的下一行 |
f | 显示下一屏文件文本 |
b | 显示上一屏文件文本 |
/word | 在文件中查找匹配文本表达式的内容 |
n | 在文件中查找下一处匹配已指定表达式的内容 |
‘ | 跳到指定表达式匹配到的第一处内容 |
!cmd | 执行shell命令 |
v | 在当前行启动vi编辑器 |
CTRL-L | 重绘当前屏 |
= | 显示当前行在文件中的行号 |
. | 重复执行前一个命令 |
less:more的升级版,可以显示文件内容而不用读取整个文件
tail:显示文件末尾部分的内容,默认情况下显示文件末尾10行
参数 | 功能 |
---|---|
-c bytes | 显示文件最后的bytes个字节的字符 |
-n lines | 显示文件最后的lines行 |
-f | 让tail程序移植保持活动状态,如果有新的内容加到文件的末尾就显示出来 |
–pid=PID | 和-f一起,跟踪一个文件直到进程ID为PID的进程结束 |
-s sec | 和-f参数一起,在每个循环输出之间休眠sec秒 |
-v | 总是显示带文件名的头 |
-q | 从不显示带文件名的头 |
head:显示文件开头内容,默认显示十行,类似与tail,但不支持-f参数属性