文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

linux学习-常规命令使用1

2024-04-02 19:55

关注

系统用户
PS1 定义提示符的格式 例如:
PS1=XXX 当前用户名就会被临时修改

linux学习-常规命令使用1

echo $PS1

[\u@\h \W]\$   // u表示用户,h 主机名 W 当前的文件夹



linux学习-常规命令使用1

#  管理员
$  普通用户


命令类型:当我们输入一个命令后,它会通过shell交给kernel,kernel来判断这个命令的类型

内部指令 :内核自带的 kernel自身就有的
外部指令 :GUN file 安装的文件

查看一下内部指令存放的位置

linux学习-常规命令使用1

ll vmlinuz-3.10.0-327.el7.x86_64 -h

//h表示符合人类查看方式,查看数据的大小比较方便,这个内核只有4.1M。这里包含了所有的内置命令


type  which 命令的比较

linux学习-常规命令使用1

type:用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令。通过上图可知who是外部指令,type是内部指令

linux学习-常规命令使用1

which命令用于查找并显示给定命令的绝对路 径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用 which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 

通过比较可知 which只能找外部指令,不能找内部指令

补充:

which     查看可执行文件的位置
whereis    查看文件的位置
locate     配合数据库查看文件位置
find      实际搜寻硬盘查询文件名称


which:通过 PATH环境变量到该路径内查找可执行文件,所以基本的功能是寻找可执行文件

whereis
参数
-b : 只找二进制文件
-m: 只找在说明文件manual路径下的文件
-s : 只找source源文件
-u : 没有说明文档的文件
例如:whereis passwd

passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz  // 将和passwd文件相关的文件都查找出来

和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。

locate

locate 文件或者目录名称
例如:locate passwd

/home/weblogic/bea/user_projects/domains/zhanggongzhe112/myserver/stage/_appsdir_DB_war/DB.war/jsp/as/user/passwd.jsp
/home/weblogic/bea/user_projects/domains/zhanggongzhe112/myserver/stage/_appsdir_admin_war/admin.war/jsp/platform/passwd.jsp
/lib/security/pam_unix_passwd.so
/lib/security/pam_passwdqc.so
/usr/include/rpcsvc/yppasswd.x
…………
find
参数说明:
时间查找参数:
-atime n :将n*24小时内存取过的的文件列出来
-ctime n :将n*24小时内改变、新增的文件或者目录列出来
-mtime n :将n*24小时内修改过的文件或者目录列出来
-newer file :把比file还要新的文件列出来
名称查找参数:
-gid n     :寻找群组ID为n的文件
-group name  :寻找群组名称为name的文件
-uid n     :寻找拥有者ID为n的文件
-user name   :寻找用户者名称为name的文件
-name file   :寻找文件名为file的文件(可以使用通配符)
例如:find / -name who


补充总结:当我们用whereis和locate无法查找到我们需要的文件时,可以使用find,但是find是在硬盘上遍历查 找,因此非常消耗硬盘的资源,而且效率也非常低,因此建议大家优先使用whereis和locate。
locate 是在数据库里查找,数据库大至每天更新一次。
whereis 可以找到可执行命令和man page
find 就是根据条件查找文件。
which 可以找到可执行文件和别名(alias)  
                                                                           




阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯