热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux操作系统相关命令

Linux操作系统相关命令Linux中的命令格式为:command[options][arguments]中括号表示可选的,即有些命令不需要选项也不需要

Linux操作系统相关命令


Linux中的命令格式为:command [options] [arguments]
中括号表示可选的,即有些命令不需要选项也不需要参数,但有的命令在运行时需要多个选项或参数。

  • options(选项):选项是调整命令执行行为的开关,选项的不同决定了命令的显示结果不同。
  • agruments(参数):参数是指命令的作用对象。


文章目录

  • Linux操作系统相关命令
    • 一、vi/vim
    • 二、cd
    • 三、 mv
    • 四、curl
    • 五、 yum
    • 六、wget
    • 七、ln
    • 八、mkdir
    • 九、chmod命令
    • 十、chown
    • 十一、ls
    • 十二、 cp
    • 十三、rm
    • 十四、cat


一、vi/vim

文本编辑器,若文件存在则是编辑,若不存在则是创建并编辑文本。


  • 命令语法:

    vim [参数]

    参数说明:可编辑的文件名。

  • 命令示例:
    编辑名为clusterconfig的xml文本:

    vim clusterconfig.xml

  • 注:vim编辑器有以下三种模式:

    • 正常模式:其它模式下按Esc或Ctrl+[进入,左下角显示文件名或为空。
    • 插入模式:正常模式下按i键进入,左下角显示–INSERT–。
    • 可视模式:正常模式下按v键进入,左下角显示–VISUAL–。
  • 退出命令(正常模式下):

    • :wq 保存并退出。
    • :q! 强制退出并忽略所有更改。
    • :e! 放弃所有修改,并打开原有文件。

二、cd

显示当前目录的名称,或切换当前的目录(打开指定目录)。


  • 命令语法:

    cd [参数]

  • 参数说明:

    • 无参数:切换用户当前目录。
    • . :表示当前目录;
    • .. :表示上一级目录;
    • ~ :表示home目录;
    • / :表示根目录。
  • 命令示例:

    • 切换到usr目录下的bin目录中:

      cd /usr/bin

    • 切换到用户home目录:

      cd

    • 切换到当前目录(cd后面接一个.):

      cd .

    • 切换到当前目录上一级目录(cd后面接两个.):

      cd ..

    • 切换到用户home目录:

      cd ~

    • 切换到根目录下:

      cd /

注:切换目录需要理解绝对路径和相对路径这两个概念。


  • 绝对路径:在Linux中,绝对路径是从/(即根目录)开始的,例如 /opt/software/etc/profile, 如果目录以 / 就是绝对目录。
  • 相对路径:是以 ... 开始的目录。 . 表示用户当前操作所在的位置,而 … 表示上级目录。例如 ./gs_om 表示当前目录下的文件或者目录。

三、 mv

文件或目录改名(move (rename) files)或将文件或目录移入其它位置,经常用来备份文件或者目录。


  • 命令语法:

    mv [选项] 参数1 参数2

  • 常用选项:

    • -b:若需覆盖文件,则覆盖前先行备份。
  • 参数说明:

    • 参数1:源文件或目录。
    • 参数2:目标文件或目录。
  • 命令示例:

    • 将文件python重命名为python.bak:

      mv python python.bak

    • 将/physical/backup目录下的所有文件和目录到/data/dbn1目录下:

      mv /physical/backup/* /data/dbn1


四、curl

在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具。支持文件的上传和下载,是综合传输工具。


  • 命令语法:

    curl [选项] [URL]

  • 常用选项:

    • -A/--user-agent :设置用户代理发送给服务器;
    • -C/--continue-at :断点续转;
    • -D/--dump-header :把header信息写入到该文件中;
    • -e/--referer:来源网址;
    • -o/--output:把输出写到该文件中;
    • -O/--remote-name:把输出写到该文件中,保留远程文件的文件名;
    • -s/--silent:静默模式。不输出任何东西;
    • -T/--upload-file :上传文件;
    • -u/--user :设置服务器的用户和密码;
    • -x/--proxy :在给定的端口上使用HTTP代理;
    • -#/--progress-bar:进度条显示当前的传送状态。
  • 参数说明:

    • URL:指定的文件传输URL地址。
  • 命令示例:

    • url(https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo)的内容保存到/etc/yum.repos.d/CentOS-Base.repo文件中。

      curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo

    • 如果在传输过程中掉线,可以使用-C的方式进行续传。

      curl -C -O https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo


五、 yum

Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载和安装。


  • 命令语法:

    yum [options] [command] [package ...]

  • 常用选项:

    • -h:查看帮助;
    • -y:当安装过程提示选择全部为 “yes”;
    • -q:不显示安装的过程。
  • 参数说明:

    • command:要进行的操作。
    • package:安装的包名。
  • 命令示例:

    • 列出所有可更新的软件清单命令:

      yum check-update

    • 更新所有软件命令:

      yum update

    • 列出所有可安裝的软件清单命令:

      yum list

    • 安装指定的软件:

      yum install -y libaio-devel flex bison ncurses-devel glibc.devel patch lsb_release wget python3


六、wget

wget是Linux下下载文件的最常用命令。wget支持HTTP,HTTPS和FTP协议,支持自动下载,即可以在用户退出系统后在后台执行,直到下载结束。


  • 命令语法:

    wget [选项] [URL]

  • 常用选项:

    • -c:接着下载没下载完的文件;
    • -b:启动后转入后台执行;
    • -P:指定下载目录;
    • -O:变更下载文件名;
    • --ftp-user --ftp-password:使用FTP用户认证下载。
  • 参数说明:
    指定的文件下载URL地址。

  • 命令示例:

    • 下载openGauss数据库安装文件到当前文件夹:

      wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/1.1.0/x86/openGauss-1.1.0-CentOS-64bit.tar.gz

    • 使用wget断点续传:

      wget –c https://opengauss.obs.cn-south-1.myhuaweicloud.com/1.1.0/x86/openGauss-1.1.0-CentOS-64bit.tar.gz


七、ln

为某一个文件在另外一个位置建立一个同步的链接(软硬链接,不带选项为硬链接)。
当需要在不同的目录,用到相同的文件时,就不需要在每一个需要要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。


  • 命令语法:

    ln [选项] 参数1 参数2

  • 常用选项:

    • -b --删除,覆盖以前建立的链接;
    • -d --允许超级用户制作目录的硬链接;
    • -s --软链接(符号链接)。
  • 参数说明:

    • 参数1:源文件或目录。
    • 参数2:被链接的文件或目录。
  • 命令示例:

    • 为python3文件创建软链接/usr/bin/python,如果python3丢失,/usr/bin/python将失效:

      ln -s python3 /usr/bin/python

    • 为python3创建硬链接/usr/bin/python,python3与/usr/bin/python的各项属性相同:

      ln python3 /usr/bin/python


八、mkdir

创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。


  • 命令语法:

    mkdir [选项] [参数]

  • 常用选项:

    • -p --可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录(递归);
    • -v --每次创建新目录都显示信息;
    • -m --设定权限<模式> (类似chmod)&#xff0c;而不是rwxrwxrwx减umask。
  • 参数说明&#xff1a;

    • 需要创建的目录。
  • 命令示例&#xff1a;

    • 创建一个空目录&#xff1a;

      mkdir test

    • 递归创建多个目录&#xff1a;

      mkdir -p /opt/software/openGauss

    • 创建权限为777的目录(目录的权限为rwxrwxrwx)&#xff1a;

      mkdir -m 777 test


九、chmod命令

更改文件权限。


  • 命令语法&#xff1a;

    chmod [选项] <mode> <file...>

  • 常用选项&#xff1a;

    • -R, --以递归的方式对目前目录下的所有文件与子目录进行相同的权限变更。
  • 参数说明&#xff1a;

    • mode&#xff1a;权限设定字串&#xff0c;详细格式如下 &#xff1a;

      [ugoa...][[&#43;-&#61;][rwxX]...][,...]

      [ugoa...]&#xff1a;u 表示该档案的拥有者&#xff0c;g 表示与该档案的拥有者属于同一个群体(group)者&#xff0c;o 表示其他以外的人&#xff0c;a 表示所有&#xff08;包含上面三者&#xff09;&#xff1b;
      [&#43;-&#61;]&#xff1a;&#43; 表示增加权限&#xff0c;- 表示取消权限&#xff0c;&#61; 表示唯一设定权限&#xff1b;
      [rwxX]&#xff1a;r 表示可读取&#xff0c;w 表示可写入&#xff0c;x 表示可执行&#xff0c;X表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

    • file&#xff1a;文件列表&#xff08;单个或者多个文件、文件夹&#xff09;。

  • 命令示例&#xff1a;

    • 设置所有用户可读取文件 cluterconfig.xml&#xff1a;

      chmod ugo&#43;r cluterconfig.xml

      chmod a&#43;r cluterconfig.xml

    • 设置当前目录下的所有档案与子目录皆设为任何人可读写&#xff1a;

      chmod -R a&#43;rw *

  • 数字权限使用格式&#xff1a;

    • 这种使用方式中&#xff0c;规定数字4、2和1表示读、写、执行权限&#xff0c;即r&#61;4,w&#61;2,x&#61;1。

    • 例&#xff1a;rwx &#61; 7&#xff08;4&#43;2&#43;1&#xff09;&#xff1b;rw &#61; 6&#xff08;4&#43;2&#xff09;&#xff1b;r-x &#61; 5 &#xff08;4&#43;0&#43;1&#xff09;&#xff1b;r-- &#61; 4&#xff08;4&#43;0&#43;0&#xff09;&#xff1b;–x &#61; 1&#xff08;0&#43;0&#43;1&#xff09;&#xff1b;
      每个文件都可以针对三个粒度&#xff0c;设置不同的rwx(读写执行)权限。即我们可以用用三个8进制数字分别表示 拥有者 、群组 、其它组( u、 g 、o)的权限详情&#xff0c;并用chmod直接加三个8进制数字的方式直接改变文件权限。语法格式为 &#xff1a;

      chmod <abc> file...

      其中&#xff0c;a,b,c各为一个数字&#xff0c;分别代表User、Group、及Other的权限&#xff0c;相当于简化版的chmod u&#61;权限,g&#61;权限,o&#61;权限 file…&#xff0c;而此处的权限将用8进制的数字来表示User、Group、及Other的读、写、执行权限。

  • 命令示例&#xff1a;

    • 赋予cluterconfig.xml文件可读可写可执行权限&#xff08;所有权限&#xff09;&#xff1a;

      chmod 777 cluterconfig.xml

    • 赋予/opt/software/openGauss目录下所有文件及其子目录 用户所有权限组可读可执行权限&#xff0c;其他用户可读可执行权限&#xff1a;

      chmod R 755 /opt/software/openGauss


十、chown

利用 chown 将指定文件的拥有者改为指定的用户或组&#xff0c;用户可以是用户名或者用户ID&#xff1b;组可以是组名或者组ID&#xff1b;文件是以空格分开的要改变权限的文件列表&#xff0c;支持通配符。只有系统管理者(root)才有这样的权限。使用权限 : root。


  • 命令语法&#xff1a;

    chown [选项] user[:group] file...

  • 常用选项:

    • -c : 显示更改的部分的信息&#xff1b;
    • -f : 忽略错误信息&#xff1b;
    • -R : 处理指定目录以及其子目录下的所有文件。
  • 参数说明

    • user : 新的文件拥有者的使用者 ID。
    • group : 新的文件拥有者的使用者组(group)。
    • flie&#xff1a;文件。
  • 命令示例&#xff1a;

    • 将文件 file1.txt 的拥有者设为omm&#xff0c;群体的使用者dbgrp:

      chown omm:dbgrp /opt/software/openGauss/clusterconfig.xml

    • 将目前目录下的所有文件与子目录的拥有者皆设为omm&#xff0c;群体的使用者dbgrp:

      chown -R omm:dbgrp *


十一、ls

列出文件和目录的内容。


  • 命令语法&#xff1a;

    ls [选项] [参数]

  • 常用选项&#xff1a;

    • -l --以长格式显示&#xff0c;列出文件的详细信息&#xff0c;如创建者&#xff0c;创建时间&#xff0c;文件的读写权限列表等等&#xff1b;
    • -a --列出文件下所有的文件&#xff0c;包括以".“和”…"开头的隐藏文件 &#xff08;Linux下文件隐藏文件是以 .开头的&#xff0c;如果存在 … 代表存在着父目录&#xff09;&#xff1b;
    • -d --列出目录本身而非目录内的文件&#xff0c;通常要与-l一起使用&#xff1b;
    • -R --同时列出所有子目录层&#xff0c;与-l相似&#xff0c;只是不显示出文件的所有者&#xff0c;相当于编程中的“递归”实现&#xff1b;
    • -t --按照时间进行文件的排序&#xff0c;Time&#xff08;时间&#xff09;&#xff1b;
    • -s --在每个文件的后面打印出文件的大小&#xff0c;size&#xff08;大小&#xff09;&#xff1b;
    • -S --以文件的大小进行排序。
  • 参数说明&#xff1a;

    • 目录或文件。
  • 命令示例&#xff1a;

    • 以长格式列出当前目录中的文件及目录&#xff1a;

      ls -l


十二、 cp

复制文件或者目录。


  • 命令语法&#xff1a;

    cp [选项] 参数1 参数2

  • 常用选项&#xff1a;

    • -f --如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)&#xff1b;
    • -n --不要覆盖已存在的文件(使前面的 -i 选项失效)&#xff1b;
    • -I --覆盖前询问(使前面的 -n 选项失效)&#xff1b;
    • -p --保持指定的属性(默认&#xff1a;模式,所有权,时间戳)&#xff0c;如果可能保持附加属性&#xff1a;环境、链接、xattr 等&#xff1b;
    • -R,-r --复制目录及目录内的所有项目。
  • 参数说明&#xff1a;

    • 参数1&#xff1a;源文件。
    • 参数2&#xff1a;目标文件。
  • 命令示例&#xff1a;

    • 将home目录中的abc文件复制到opt目录下&#xff1a;

      cp /home/abc /opt

      注&#xff1a;目标文件存在时&#xff0c;会询问是否覆盖。这是因为cp是cp -i的别名。目标文件存在时&#xff0c;即使加了-f标志&#xff0c;也还会询问是否覆盖。


十三、rm

删除一个目录中的一个或多个文件或目录&#xff0c;它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件&#xff0c;只是删除了链接&#xff0c;原有文件均保持不变。


rm是一个危险的命令&#xff0c;使用的时候要特别当心&#xff0c;否则整个系统就会毁在这个命令&#xff08;比如在/&#xff08;根目录&#xff09;下执行rm *
rf&#xff09;。所以&#xff0c;我们在执行rm之前最好先确认一下在哪个目录&#xff0c;到底要删除什么东西&#xff0c;操作时保持高度清醒的头脑。



  • 命令语法&#xff1a;

    rm [选项] 文件

  • 常用选项&#xff1a;

    • -f --忽略不存在的文件&#xff0c;从不给出提示&#xff1b;
    • -r --指示rm将参数中列出的全部目录和子目录均递归地删除。
  • 参数说明&#xff1a;

    • 需要删除的文件或目录。
  • 命令示例&#xff1a;

    • 删除文件&#xff1a;

      rm qwe

      注&#xff1a;输入rm qwe命令后&#xff0c;系统会询问是否删除&#xff0c;输入y后就会删除文件&#xff0c;不想删除文件则输入n。

    • 强制删除某个文件&#xff1a;

      rm -rf clusterconfig.log


十四、cat

连接文件并在标准输出上输出。这个命令常用来显示文件内容&#xff0c;或者将几个文件连接起来显示&#xff0c;或者从标准输入读取内容并显示&#xff0c;它常与重定向符号配合使用。


  • 命令语法&#xff1a;

    cat [选项] [参数]

  • 常用选项&#xff1a;

    • -E --在每行结束显示$&#xff1b;
    • -n –由1开始对给所有输出行编号&#xff1b;
    • -b 或 --number-nonblank&#xff1a;和 -n 相似&#xff0c;只不过对于空白行不编号&#xff1b;
    • -v --使用 ^ 和 M- 符号&#xff0c;除了 LFD 和 TAB 之外。
  • 参数说明&#xff1a;

    • 可操作的文件名。
  • 命令示例:

    • 显示testfile文件的内容&#xff1a;

      cat textfile

    • 把 textfile1 和 textfile2 的文档内容加上行号&#xff08;空白行不加&#xff09;之后将内容追加到 textfile3 文档里&#xff1a;

      cat -b textfile1 textfile2 >> textfile3

    • 向/etc/profile中追加内容&#xff08;输入EOF表示结束追加&#xff09;&#xff1a;

      cat >>/etc/profile<<EOF
      >export LD_LIBRARY_PATH&#61;$packagePath/script/gspylib/clib:$LD_LIBRARY_PATH
      >EOF
      >

      注&#xff1a; EOF是end of
      file的缩写&#xff0c;表示"文字流"&#xff08;stream&#xff09;的结尾。"文字流"可以是文件&#xff08;file&#xff09;&#xff0c;也可以是标准输入&#xff08;stdin&#xff09;。在Linux系统之中&#xff0c;EOF是当系统读取到文件结尾&#xff0c;所返回的一个信号值&#xff08;也就是-1&#xff09;。


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 突破MIUI14限制,自定义胶囊图标、大图标样式,支持任意APP
    本文介绍了如何突破MIUI14的限制,实现自定义胶囊图标和大图标样式,并支持任意APP。需要一定的动手能力和主题设计师账号权限或者会主题pojie。详细步骤包括应用包名获取、素材制作和封包获取等。 ... [详细]
author-avatar
94爱拍就是爱拍
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有