shell简单命令

news2024/11/16 11:46:56

命令入门:

[root@localhost ~]#         #/root
[jinxf@localhost ~]$        #/home/jinxf

用户名@主机名 当前目录 #系统权限 $普通权限

命令格式

命令

选项

参数(三者之间要有空格,区分大小写)

command

[-options]

[args]:参数(多个参数之间用空格分隔)

案例演示:

[root@node1 ~]# ls -a
.   a    anaconda-ks.cfg  .bash_logout  .bashrc  install.log         .tcshrc   x
..  abc  .bash_history    .bash_profile  .cshrc  install.log.syslog  .viminfo  xyz
[root@node1 ~]# ls -a -l
total 72
dr-xr-x---. 6 root root 4096 Nov 27 12:37 .
dr-xr-xr-x. 22 root root 4096 Nov 27 09:22 ..
drwxr-xr-x  3 root root 4096 Nov 27 10:17 a
drwxr-xr-x  8 root root 4096 Nov 27 10:53 abc
-rw-------. 1 root root  900 Nov 27 03:47anaconda-ks.cfg
-rw-------. 1 root root  828 Nov 27 09:48.bash_history
-rw-r--r--. 1 root root   18 May 20  2009 .bash_logout
-rw-r--r--. 1 root root  176 May 20  2009 .bash_profile
-rw-r--r--. 1 root root  176 Sep 23  2004 .bashrc
-rw-r--r--. 1 root root  100 Sep 23  2004 .cshrc
-rw-r--r--. 1 root root 8815 Nov 27 03:47 install.log
-rw-r--r--. 1 root root 3384 Nov 27 03:46 install.log.syslog
 [root@node1~]# ls -al install.log
-rw-r--r--. 1 root root 8815 Nov 27 03:47install.log
[root@node1 ~]# ls -al install.log install.log.syslog
-rw-r--r--. 1 root root 8815 Nov 27 03:47install.log
-rw-r--r--. 1 root root 3384 Nov 27 03:46install.log.syslog
[root@node1 ~]# ls -al install*
-rw-r--r--. 1 root root 8815 Nov 27 03:47install.log
-rw-r--r--. 1 root root 3384 Nov 27 03:46 install.log.syslog
[root@node1 ~]# ls -al *.log
-rw-r--r--. 1 root root 8815 Nov 27 03:47install.log
[root@node1 ~]# ls -al *.log*
-rw-r--r--. 1 root root 8815 Nov 27 03:47install.log
-rw-r--r--. 1 root root 3384 Nov 27 03:46install.log.syslog

1.2 获取命令的帮助

1、使用help查看内建命令的帮助(enable查看内建命令)

2、info命令

3、--help

4、#man命令

5、查手册

6、搜索引擎

1.2.1 help

[root@node1 ~]# help -s cd
cd: cd [-L|-P] [dir]
[root@node1 ~]# help -d cd
cd - Change the shell workingdirectory.
[root@node1 ~]# help -m cd
NAME
   cd - Change the shell working directory.

SYNOPSIS
   cd [-L|-P] [dir]

DESCRIPTION
   Change the shell working directory.
   
   Change the current directory to DIR. The default DIR is the value of the
HOMEshell variable.
……

但是help只能查看内建命令,比如我想查看mv的帮助信息就不行

[root@node1 ~]# help mv
bash: help: no help topics match`mv'.  Try `help help' or `man -k mv' or`info mv'.

我们怎么知道哪些是内建命令呢?

[root@node1 ~]# enable

enable也不用背,该方式比较费时间,help无法使用时,根据提示换其他帮助方式就ok了。

1.2.2 命令 --help

[root@nodel ~]# mv --help

查手册&搜索引擎

手册见《参考手册&资料》

搜索:必应  www.bing.com

     谷歌/百度等

man

man安装

当前虚拟机中不能直接使用man,默认是没有安装的,不识别man命令。

[root@node2 ~]# man ls
-bash: man: command not found

所以需要安装,安装man和man-pages手册,查看命令的帮助信息

[root@node1 ~]# yum install man man-pages -y

[root@node1 ~]# man ls

q退出命令查看

看到的全是英文,是不是很酸爽,慢慢多看看就好了。如果你英语烂到完全看不懂,那我再教你一招,汉化man提示信息。

要想汉化man提示信息,系统中需要安装man-pages-zh-CN软件包。默认情况下,系统自带的yum源不包含man-pages-zh-CN。

[root@node2 ~]# yum search man-pages-zh-CN
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base:mirrors.huaweicloud.com
 * extras:mirror.bit.edu.cn
 * updates:mirror.bit.edu.cn
Warning: No matches found for: man-pages-zh-CN
No Matches found

默认的源存放目录:

[root@node2 ~]# ls /etc/yum.repos.d/
CentOS-Base.repo CentOS-Debuginfo.repo  CentOS-Media.repo  CentOS-Vault.repo

所以下载后的第三方yum源epel也保存到该目录下,使用yum命令时会去该目录下解析后缀名为repo的文件。

[root@node1 ~]# wget -O /etc/yum.repos.d/epel.repohttp://mirrors.aliyun.com/repo/epel-6.repo
-bash: wget: command not found

wget不能使用,需要先安装,安装wget,否则无法通过该命令进行下载。

[root@node1 ~]# yum install wget -y

然后将epel的源放到本地,然后清除yum本地缓存,重新生成缓存。

[root@node1 ~]#wget -O /etc/yum.repos.d/epel.repohttp://mirrors.aliyun.com/repo/epel-6.repo
[root@node1 ~]# yum clean all
[root@node1 ~]#yum makecache
[root@node1 ~]# yum install  man-pages-zh-CN  -y

是不是可以使用了呢,相信你已经迫不及待的想要测试一把了。

[root@node1 ~]# man ls

发现还是英文,怎么回事?

这是因为虽然你安装了man的中文包,但是系统的语言还是英文环境,

[root@node1 ~]# echo $LANG
en_US.UTF-8

所以需要修改系统的语言环境。

[root@node1 ~]# LANG=zh_CN.UTF-8
[root@node1 ~]# echo $LANG
zh_CN.UTF-8

然后再次测试便有中文信息了。

       但是这样修改这有效到断开连接,或者下次重启系统。如何才能长期有效呢?

[root@node1 ~]# vim /etc/sysconfig/i18n

1.2.4.2 man的使用

enter 向下一行 退出按q

空格按页向下翻 b向上翻页 p直接翻到首页 查找按/要查找的内容,查找 下一个/上一个: 按n/N

man

  • 1 用户命令(/bin,/usr/bin,/usr/local/bin)
  • 2 系统调用
  • 3 库函数
  • 4 特殊文件(设备文件)
  • 5 文件格式(配置文件的语法)
  • 6 游戏
  • 7 杂项(Miscellaneous)
  • 8 管理命令(/sbin,/usr/sbin,/usr/local/sbin)

指定查看某种帮助:

[root@node1~]# man 2 read

[root@node1 ~]# man read

1.3 echo

[root@node1 ~]# help echo

[root@node1 ~]# echo "hello world"
hello world
[root@node1 ~]# echo -n "hello world"
hello world[root@node1 ~]#

-e表示解释逃逸字符

[root@node1 ~]# echo -e "hello \nworld"
hello 
world
[root@node1 ~]# echo  "hello \nworld"
hello \nworld

1.4 test命令

计算3>2 的结果,打印返回值,计算3

echo $? 打印上一行命令的执行结果

[root@node1 ~]# test 3 -gt 2
[root@node1 ~]# echo $?
0
[root@node1 ~]# test 3 -lt 2
[root@node1 ~]# echo $?
1
[root@node1 ~]# test 5 -lt 2
[root@node1 ~]# echo $?
1

成立返回0(true),不成立返回1(false)

[root@node1 ~]# [ 3 -gt 2 ]
[root@node1 ~]# echo $?
0
[root@node1 ~]# [ 5 -lt 2 ]
[root@node1 ~]# echo $?
1
[root@node1 ~]# [ 5 -lt 2]
-bash: [: missing `]'
[root@node1 ~]# [5 -lt 2 ]
-bash: [5: command not found

[]和内容之间一定要有空格,否则抛错。

1.5 环境变量: PATH

当在shell中执行命令的时候,默认到PATH指定的路径中查找可执行文件

如果在PATH中的多个目录都包含该可执行文件,则执行最先找到的。

[root@node1 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

如果找不到,这提示命令不识别。

1.6 type 和 file

1.6.1 type命令:外部命令和内部命令

type 打印一个字符串的类型,可能的值为:别名、内置命令、函数、关键字、可执行文件或者什么都不输出(不是前面的类型)

操作系统:kernel内核+shell壳

查看cd命令的类型:

[root@node1 ~]# type cd
cd is a shell builtin

cd是一个builtin命令,也就是bash内置的命令。

查看yum命令的类型:

[root@node1 ~]# type yum
yum is /usr/bin/yum

yum是外部命令

1.6.2 file命令:检查文件的类型

[root@node1 ~]# file /usr/bin/yum
/usr/bin/yum: a /usr/bin/python script textexecutable

yum命令是外部命令,它的文件是python脚本类型文件。

[root@node1 ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

1.7 ls

ls命令用于列出目录内容: ls

添加-l以长格式输出,列出根目录下内容的详细列表 : ls -l

也可以后面跟多个目录,列出多个目录的内容:ls / /usr

也可以通过命令的别名列出详细列表:

ll

ls -a

ls -a -l

ls -al

1.8 pwd 打印当前工作目录路径

1.9 cd

cd用于更改shell工作目录,也就是切换目录 change directory  cd

cd /etc

如果cd后什么都不写,表示直接回当前用户家目录

cd cd /etc

cd后跟波浪线,也表示回用户家目录

cd ~

cd后也可以跟减号(-)用以表示回到最后一次切换之前的目录,多次使用减号在最近两个目录之间切换

cd /etc/sysconfig/network-scritps cd -

root用户可以直接通过绝对路径进到普通用户的家目录

cd /home/god cd .. ll

也可以直接跟波浪线用户名表示直接进入到某个用户的家目录

cd ~bjsxt 到用户bjsxt家中去,root不受限制

1.10 ps

可以通过命令查看系统内进程信息

ps -ef

查看磁盘使用情况

l  进程查看命令

Ø  ps(process status) :将某个时间点的程序运作情况截取下来

Ø  选项和参数

Ø  a :和输入终端(terminal) 关联的所有 process,通常与x一起使用,

列出完整信息。

Ø  x :后台进程,通常与 a 这个参数一起使用,可列出较完整信息

Ø  u :有效使用者 (effective user) 相关的 process 

l  常用组合

Ø  ps aux 观察系统所有的程序数据 (常用)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/611408.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

004-从零搭建微服务-认证中心(四)

写在最前 如果这个项目让你有所收获,记得 Star 关注哦,这对我是非常不错的鼓励与支持。 源码地址:https://gitee.com/csps/mingyue 文档地址:https://gitee.com/csps/mingyue/wikis 搭建前端框架 感谢开源项目【vue-next-adm…

最厉害的缓存框架,没有之一!

Redis有多火爆? 现在阿里、腾讯这样的大厂和大部分互联网公司,基本上都需要使用到Redis技术。网上发布的Java开发工程师岗位的招聘信息,对Redis的要求都是熟练掌握。 而且现在大厂的大部分面试题都和Redis有关,尤其是在阿里、字节…

在 iPhone 和 Android 上恢复已删除的微信消息/聊天的 3 种方法

微信是一款面向移动用户的免费即时通讯应用程序。它适用于 iOS 和 Android。 好消息是,在微信 经历了如此艰难的运行之后,它仍在我们身边,并将在其新所有者恢复工具的帮助下继续发展。 微信 是一个相当受欢迎消息应用程序。非常简单易用&am…

【论文阅读】Megatron-LM要点

Megatron-LM论文要点 本文主要是对李沐老师的b站分享做一下自己的理解和总结。 李沐老师b站分享 模型结构无非就是那样,相比而言,想要训练更大的模型而又能平稳进行,是一项非常高超的技术! nvidia 跟gpipe类似,也是…

mysql中sql语句之分组(group by)

文章目录 前言分组查询定义语法说明 group by使用group by group_concat()的使用group by 聚合函数的使用group by having的使用group by with rollup的使用分组查询小结 前言 今天遇到公司新来的小伙伴咨询问题,统计集团内部的在职员工与离职员工数量&#xf…

负载不堵塞,稳定可靠,企业性能测试指南!

目录 前言: 基准测试 - 确认你的产品在正常使用条件下的性能 负载测试 - 确认你的产品在高负荷下的性能 压力测试 - 确认你的产品的极限性能 稳定性测试 - 确认你的产品在长时间高负荷下的表现 总结 前言: 在当今竞争激烈的商业环境中,…

我敢说,这是科普路由协议的最高境界

大家好,我是许公子。 路由协议,经常看我文章的小友都知道,给你们说过很多期了。 这是网络世界里,很重要的一个概念,总得来说,它负责将数据包从源节点传递到目的节点。 最近又有很多萌新关注过来&#xff…

C语言:计算n的阶乘(不考虑溢出)

题目: 从键盘输入一个值n,计算n的阶乘, 如:输入5,计算5的阶乘 --> 5! 1 * 2 * 3 * 4 * 5 思路: 第一步: 创建一个变量 ret ,用来存放每次相乘后的值, 因为 0 乘 任何…

uipath 实现连接pg数据库

1、下载ODBC 如需要使用UiPath连接数据库进行操作,需要先准备必需条件先安装ODBC。 postgresql ODBC下载链接:https://www.postgresql.org/ftp/odbc/versions/msi/ 下载最新的安装包即可。 2、配置ODBC 下载完pgsql ODBC的安装包直接打开压缩包进行…

实验篇(7.2) 07. 通过安全隧道访问指定网站 (SSL) ❀ 远程访问

【简介】通过前面的实验,我们已经了解了SSL VPN的隧道模式。FortiClient客户端拨号后,访问服务器IP的流量,会通过安全隧道到达远端防火墙,并访问DMZ接口下的服务器。那如果我想让更多的访问走安全隧道,但是又不确定是哪…

最受欢迎的十个开源大数据技术

导读大数据已然成为当今最热门的技术之一,正呈爆炸式增长。每天来自全球的新项目如雨后春笋般涌现。幸运地是,开源让越来越多的项目可以直接采用大数据技术,下面就来盘点最受欢迎的十大开源的大数据技术。 大数据已然成为当今最热门的技术之…

热烈庆祝兴业法拍网与中关村科技融资担保有限公司签订业务合作

6月1日,兴业法拍网与北京中关村科技融资担保有限公司签订“法拍贷”合作协议。 “法拍贷”是以法院房产拍卖为核心、线上平台拓宽拍卖渠道、保险公司提供阶段性保证、公证机构加大司法效力、银行提供全程金融服务的“14”创新合作模式。该模式汇聚五方合力让更多竞…

在本地Windows 11 系统的桌面版Docker上搭建PlantUML

文章目录 在本地Windows系统的桌面版Docker上搭建PlantUML简介步骤步骤 1:安装Docker Desktop步骤 2:启动Docker Desktop步骤 3:拉取PlantUML镜像步骤 4:运行PlantUML容器步骤 5:访问PlantUML Web界面 结论参考资料 结…

stable-diffusion-webui 更换 Python 版本

目录 一、原因二、解决方法 一、原因 stable-diffusion-webui 推荐版本是 Python 3.10 ,如果电脑中安装了其他版本到Python,会警告推荐使用Python 3.10版本。 官方安装教程 Automatic Installation on Windows Install Python 3.10.6 (Newer version of…

OBS如何做绿幕直播(滤镜实现去除绿色背景)

OBS如何做绿幕直播(滤镜实现去除绿色背景) 一、设备 推流电脑(i7及以上,16G内存,独显加分)不推荐笔记本和苹果电脑。摄像头(单反或摄像机需要配备采集卡和收音设备)。补光灯。稳定…

k8s概述

前言 通过linux基于cgroup,ns,及rootfs的学习,我们了解了基于容器技术原理。在大规模情况下,单单容器技术完全不够,k8s的出现就是解决 在大规模集群中存在各种各样的任务,任务之间又有着各样的关系。对于这些关系要如何处理优雅得…

tinkerCAD入门操作(4):使用对齐工具和工作平面帮助程序

tinkerCAD入门操作(4):使用对齐工具和工作平面帮助程序 介绍 在本课中,我们将建造一座简单的城堡。您将了解有关对齐工具、镜像和帮助程序工具的所有信息。 开始 您将使用的第一个工具是对齐工具。 无需使用鼠标仔细定位两个部分,对齐工具…

团队管理之性能实施团队日志6

一、从问题统计看进度风险 从统计来看,近三个星期过去 了,发现了 59 个问题。28 个是性能问题还需要再细分类型,现在这个还是粗了点,比如说配置问题、代码问题。 所以笼统说来除了这里的功能问题之外,其他的基本上都是…

对话中科易安市场经理:联网智能门锁之运行、运营与运维

大家好!我是中科易安市场部的市场经理,相信很多中科易安联网智能门锁的新老朋友对我并不陌生,或许我们没有面见,但是每一篇中科易安发布的原创推文皆出自我手。此刻,我想和中科易安的产品用户、客户以及媒体朋友们&…

weblogic 重置密码|修改密码

一:重置密码: 我本机的文件目录: /u01/wls12214/Middleware/user_projects/domains/wls_domain/ 第一步删除: DefaultAuthenticatorlnit.ldift (先对此文件备份,防止后续异常可复原) 删除此文件…