linux下的command

  在此记录一下:

11:30: ~$ script -t 2>record.log -a session.log

In command lines we input "script -t 2>record.log -a session.log".

In the current directory,there are two files which have been made, called record.log

and session.log. 

但是script此后在后台运行,然后我们就可以输入其他的command,

我们的动作都会被script在record.log和session.log中。我们结束记录输入exit就可以了。

播放记录:

11:30: ~$ scriptreplay record.log session.log

输入后在终端就会播放我所输入的动作。

如果使用的是mac,我用的最新的OS X 10.8有script,但是没有scriptreplay,

不知是什么原因。但是我们有办法,busybox中有很多很多linux的command,

其中上面的两个命令就有。Busybox 是一个集成了非常多个最常用linux命令和工具的软件。

而且有源码的,想了解linux的某些command实现可以看busybox源码.

官网:http://www.busybox.net

在mac中就是这样:

//记录:
12:02: ~/Desktop$ busybox script -t 2>record.olg -a session.log

//播放:
12:02: ~/Desktop$ busybox scriptreplay record.olg session.log

终端命令提示符12:02: ~/Desktop$像这样设置自己喜欢的样式和颜色,

很酷,比如显示时间,我们不用抬头看时间就知道现在几点了。

前面12:02是时间,~/Desktop是当前路径,$表示普通用户。

仅仅在~/.bashrc或者~/.bash_profile加入一行,想立刻生效,在终端输入source ~/.bashrc或

. ~/.bashrc。PS1,PS2,PS3和PS4是bash的特殊变量。

export PS1="\[\e[32;1m\]\A: \[\e[31;1m\]\w$ \[\e[0m\]"

\[\e[32;1m\] 代表绿色

\A 表示时间

\w当前目录

更详细的:

  • \a- ASCII响铃字符(07)
  • \d– 以“Weekday Month Date”格式显示日期
  • \D{format}– format被传递给strftime(3)并把相应的结果插入到提示字符串中; 如果format为空则代表本地时间. 必须有在括号
  • \e– ASCII转义字符(033)
  • \h– 到第一个 `.’前代表主机名称
  • \H– 主机名称
  • \j– 当前被Shell管理工作数
  • \l– Shell终端设置名称的基本名
  • \n– 新行
  • \r– 回车
  • \s– Shell的名称
  • \T– 12小时制当前时间,格式为 HH:MM:SS
  • \t– 24小时制当前时间,格式为 HH:MM:SS
  • \@– 12小时制当前时间,格式为am/pm
  • \A– 24小时制当前时间,格式为 HH:MM
  • \u– 当前用户的名称
  • \v– BASH版本
  • \V– BASH发行备注,版本号+补丁
  • \w– 当前工作目录,其中$HOME被缩写成"~"(使用PROMPT_DIRTRIM的值)
  • \W– 当前工作目录的basename,$HOME被缩写成"~"
  • \!– 命令的使用次数
  • \#– 命令号
  • \$– 命令提示符,如果UID是0则显示为#,否则为$
  • \nnn– 8进制数据nnn代表的字符
  • \\– 反斜杠
  • \[- 开始一个非打印字符序列,这个序列可以嵌入一个终端控制序列到提示中
  • \]– 非打印字符序列结束

如果我们写shell,想改变默认的输入颜色就可以利用上面类似的方法,改变shell输出的颜色。

  linux一大特点就是可定制性,可以根据自己的偏好自行设置。这也是我很喜欢用linux工作和学习的原因之一。

原文地址:https://www.cnblogs.com/wuchaofan/p/3003791.html