1.三种时间
在Linux下,一个文件有三种时间:
访问时间、修改时间、状态改动时间
在Linux下没有创建时间的概念,也就是不能知道文件的建立时间
- 但如果文件建立后就没有修改过,修改时间=建立时间
- 如果文件建立后,状态就没有改动过,状态时间=建立时间
- 如果文件建立后,没有被读取过,访问时间=建立时间
因为不好判断文件是否被改过,读过,其状态是否变过,所以判断文件的建立时间基本上为不可能
可以通过stat filename查看三种时间
- Access 访问时间(more、cat 等命令会改变文件访问时间,ls、stat不会改变访问时间)
- Modify 修改时间,文件内容最后一次被修改的时间(vi 后保存文件会改变修改时间)
- Change 状态改动时间 ,文件的i节点最后一次被修改的时间 (通过chmod、chown命令修改文件属性)
2.命令别名 alias
- alias 查看所有的命令别名设置
- alias lm=‘ls -al’ 给命令 ls -al 取一个别名lm
- unalias lm 取消命令别名lm
3.命令历史记录 history
执行过的命令记录在主目录下的 .bash_history中
-
上、下箭头 上下逐条翻阅历史命令
-
history 显示 .bash_history 中记录的历史命令 (在安装调试时使用的特别作用)
-
history 10 显示最近10条历史命令
-
!! 执行上一条历史命令
-
! 100 执行编号为100的历史命令
4.shell管道 |
功能:把第一个命令的输出当作第二个命令的输入
例: -
ls -l /etc | more: /etc目录下的内容太多,一屏显示不完
ls -l /etc | more 可以逐屏查看 ls -l /etc 命令的输出
-
cat /etc/passwd | sort | less: 将 /etc/passwd 内容排序(字符串按行排序),并分屏显示
sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出
- echo $PATH | cut -d ‘:’ -f 3: 将Bash环境变量PATH的值按字符 ‘:’ 进行分割成多个字符串,并取出第3个字符串
cut在文件中负责剪切数据
5.多命令执行 ; && ||
- Command1 ; Command2 不管1是否执行成功,都会执行2
ls mydir ; touch mydir/myfile(1.2都执行了,都未执行成功) - Command1 && Command2 只有1执行成功,才会执行2
ls mydir && touch mydir/myfile(只执行了1,未成功)
- Command1 || Command2 只有1执行失败,才会执行2
ls ./mydir || mkdir ./mydir(1失败,2成功)
ls ./mydir || mkdir ./mydir && touch ./mydir/myfile (1失败,2、3成功)
6.命令替换 ``
注意:` 不是单引号,是 ~ 号键上的字符
- Command1 `Command2` 2的执行结果作为1的命令输入
more `ls 3?` (先执行 ls ,得到31 32 35文件,在替换原命令为more 31 32 35)