Linux基础命令(杂序)
废话不多说,直接上干货,自学总结,命令不是最全的,但一定是最常用的,后期还会不断完善补全命令的一些细节。
history命令
用于显示用户以前执行过的历史命令,并且能对历史命令进行追加和删除等操作。
history文件存放位置
在各用户家目录下的隐藏文件 .bash_history
[root@localhost ~]# ll -a
总用量 120
dr-xr-x---. 16 root root 4096 9月 8 17:53 .
dr-xr-xr-x. 20 root root 280 9月 6 09:15 ..
-rw-------. 1 root root 5999 9月 8 17:53 .bash_history
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r-- 1 root root 242 9月 8 17:35 .bashrc
[root@localhost ~]# cd /home/test/
[root@localhost test]# ll -a
总用量 4
drwxrwxrwx. 13 hucheng hucheng 182 9月 8 15:03 .
drwxr-xr-x. 8 root root 247 9月 6 14:00 ..
-rw------- 1 hucheng hucheng 76 9月 3 11:12 .bash_history
drwxrwxr-x 5 hucheng hucheng 64 9月 2 09:42 .cache
drwx------ 5 hucheng hucheng 47 9月 6 09:15 .config
drwxrwxr-x 3 hucheng hucheng 19 9月 1 17:22 .local
history命令用法
-c: 清空命令历史
-d offset: 删除历史中指定的第offset个命令
-n: 显示最近的n条历史
-a: 追加本次会话新执行的命令历史列表至历史文件
-r: 读历史文件附加到历史列表
-w: 保存历史列表到指定的历史文件
-n: 读历史文件中未读过的行到历史列表
-p: 展开历史参数成多行,但不存在历史列表中
-s: 展开历史参数成一行,附加在历史列表后
history修改配置文件
/etc/profile
HISTSIZE:命令历史记录的条数
HISTFILE:指定历史文件,默认为~/.bash_history
HISTFILESIZE:命令历史文件记录历史的条数
使用户查看history时,可以看到各命令执行时间
[root@localhost ~]# vim .bashrc
HISTTIMEFORMAT="%Y-%M-%D %H:%M:%S "
export HISTTIMEFORMAT
~
解决思路:
①定义用户家目录下的history配置文件~/.bash_profile
②在root用户根目录下修改./bashrc
后面要有多几个空格,不然到时显示,时间会与命令逼在一起
使用修改 .bashrc 文件(在用户的家目录下)进行环境变量的编辑,只对当前用户有用。使用修改 /etc/profile 文件进行环境变量的编辑,是对所有用户有用。大家一定要注意区别。
修改完配置文件后,需要使用命令.或者source filename ,才能生效 。
问题
1.linux中,前提我是不知道我今天在这个目录下创建了那些文件,所以我要只查询今天新建的文件(只显示某个文件夹中,今天新建的文件),只用一条命令能否完成?
ll --time=ctime --time-style="+%F %R"|grep $(date +%F)
显示出该文件下的所有文件信息
ll
显示文件的权限、拥有者、所属的组、链接数发生改变时的时间。
--time=ctime
显示时间,通过后面的格式
+ 格式设定
%F 完整日期格式,等价于 %Y-%m-%d
%R 显示小时和分钟:hh:mm
%Y : 完整年份
%m : 月份
%d : 日
--time-style="+%F %R"
管道符
“命令A | 命令B”
作用:把前一个命令原本要输出到屏幕的标准数据当作是后一个命令的标准输入数据
|
grep 通过其后跟随的正则表达式,搜索需要的内容
grep
date +%F 显示当前日期
在bash中, $( ) 与 反引号 都是用来作命令替换的,执行括号或者反引号中的命令。
$(date +%F)
问题
1.linux中,配置vim时,/etc/vimrc/配置文件的注释是左双引号?不是#号吗?
2.为什么在/etc/vimrc/配置文件中,粘贴文件,会出现乱码?或者粘贴内容不规整?将同一个文件内容粘贴到其他文件里就很规整没问题。
答:此问题至今没有得到根本原因解决方案,我的解决问题方法是:
将粘贴内容粘贴到新建的a.txt
内,然后cat a.txt >> /etc/vimrc
就暂时性解决了这个问题,不过根源问题至今不知道是啥。
lsof命令
用于查看进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系统监视工具,因为lsof命令需要访问核心内存和各种文件,所以需要root用户执行。
每篇文章都会不断迭代补充,敬请关注。如有错误,劳烦指正。