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 <string>:设置用户代理发送给服务器;
    • -C/--continue-at <offset>:断点续转;
    • -D/--dump-header <file>:把header信息写入到该文件中;
    • -e/--referer:来源网址;
    • -o/--output:把输出写到该文件中;
    • -O/--remote-name:把输出写到该文件中,保留远程文件的文件名;
    • -s/--silent:静默模式。不输出任何东西;
    • -T/--upload-file <file>:上传文件;
    • -u/--user <user[:password]>:设置服务器的用户和密码;
    • -x/--proxy <host[:port]>:在给定的端口上使用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),而不是rwxrwxrwx减umask。
  • 参数说明:

    • 需要创建的目录。
  • 命令示例:

    • 创建一个空目录:

      mkdir test
      
    • 递归创建多个目录:

      mkdir -p /opt/software/openGauss
      
    • 创建权限为777的目录(目录的权限为rwxrwxrwx):

      mkdir -m 777 test
      

九、chmod命令

更改文件权限。

  • 命令语法:

    chmod [选项] <mode> <file...>
    
  • 常用选项:

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

    • mode:权限设定字串,详细格式如下 :

      [ugoa...][[+-=][rwxX]...][,...]
      

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

    • file:文件列表(单个或者多个文件、文件夹)。

  • 命令示例:

    • 设置所有用户可读取文件 cluterconfig.xml:

      chmod ugo+r cluterconfig.xml
      

      chmod a+r  cluterconfig.xml
      
    • 设置当前目录下的所有档案与子目录皆设为任何人可读写:

      chmod -R a+rw *
      
  • 数字权限使用格式:

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

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

      chmod <abc> file...
      

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

  • 命令示例:

    • 赋予cluterconfig.xml文件可读可写可执行权限(所有权限):

      chmod 777 cluterconfig.xml
      
    • 赋予/opt/software/openGauss目录下所有文件及其子目录 用户所有权限组可读可执行权限,其他用户可读可执行权限:

      chmod  R 755 /opt/software/openGauss
      

十、chown

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

  • 命令语法:

    chown [选项] user[:group] file...
    
  • 常用选项:

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

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

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

      chown omm:dbgrp /opt/software/openGauss/clusterconfig.xml
      
    • 将目前目录下的所有文件与子目录的拥有者皆设为omm,群体的使用者dbgrp:

      chown -R omm:dbgrp *
      

十一、ls

列出文件和目录的内容。

  • 命令语法:

    ls [选项] [参数]
    
  • 常用选项:

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

    • 目录或文件。
  • 命令示例:

    • 以长格式列出当前目录中的文件及目录:

      ls -l
      

十二、 cp

复制文件或者目录。

  • 命令语法:

    cp [选项] 参数1 参数2
    
  • 常用选项:

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

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

    • 将home目录中的abc文件复制到opt目录下:

      cp /home/abc /opt
      

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

十三、rm

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

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

  • 命令语法:

    rm [选项] 文件
    
  • 常用选项:

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

    • 需要删除的文件或目录。
  • 命令示例:

    • 删除文件:

      rm qwe
      

      注:输入rm qwe命令后,系统会询问是否删除,输入y后就会删除文件,不想删除文件则输入n。

    • 强制删除某个文件:

      rm -rf clusterconfig.log
      

十四、cat

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

  • 命令语法:

    cat [选项] [参数]
    
  • 常用选项:

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

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

    • 显示testfile文件的内容:

      cat textfile
      
    • 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容追加到 textfile3 文档里:

      cat -b textfile1 textfile2 >> textfile3
      
    • 向/etc/profile中追加内容(输入EOF表示结束追加):

      cat >>/etc/profile<<EOF
      >export LD_LIBRARY_PATH=$packagePath/script/gspylib/clib:$LD_LIBRARY_PATH
      >EOF
      >
      

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

Linux操作系统相关命令相关推荐

  1. Linux操作系统Ifconfig命令详细解析

    无论是Linux 自动安装还是我们手工安装,Linux 都会向你询问有关网络的问题并配置相关的软件.这个用于配置网卡的基本命令就是ifconfig. 在执行ifconfig 命令后,系统将在内核表中设 ...

  2. Linux Shell CentOS 查看Linux 操作系统 相关信息

    文章目录 Linux Shell CentOS 查看Linux 操作系统 相关信息 相关阅读 1.代码 2.结果 Linux Shell CentOS 查看Linux 操作系统 相关信息 相关阅读 L ...

  3. Linux操作系统PS命令详细 解析

    http://blog.chinaunix.net/space.php?uid=20564848&do=blog&id=74654 Linux操作系统PS命令详细 解析 要对系统中进程 ...

  4. Linux操作系统常用命令总结

    程序设计 一.makefile用法总结 (1). makefile实例 edit : main.o kbd.o command.o display.o / insert.o search.o file ...

  5. linux操作系统基础命令-2

    CentOS7 linux操作系统基础命令-2 1.在linux 操作系统中 有内部命令和外部命令之分,使用type命令可以查看该命令是外部命令还是内部命令 . [root@000000 ~]# ty ...

  6. Linux网络相关命令

    Linux网络相关命令 1 ping 2 netstat 3 tranceroute 4 ARP 5 tcpdump 1 ping 作用:检测当前主机与目标主机之间的连通性(不是100%准确,有的服务 ...

  7. Linux操作系统常见命令

    在软件开发和运维过程中,Linux操作系统操作是基本功,如下列出部分常见命令,以备忘记命令时查找确认. 常见通用命令 命令 说明 lsof -n|wc -l 查看当前系统句柄打开数 more zc.i ...

  8. Linux操作系统相关资料

    玩转Linux操作系统 操作系统发展史 只有硬件没有软件的计算机系统被称之为"裸机",我们很难用"裸机"来完成计算机日常的工作(如存储和运算),所以必须用特定的 ...

  9. linux操作系统相关常用问题总结

    关于linux操作系统常用的相关问题总结. Q1: 安装ubuntu这个linux发行版系统,为什么要先安装虚拟机VMware?我们电脑可以直接安装ubuntu吗? A1: 直接在电脑上安装ubunt ...

最新文章

  1. mkdir函数linux,linux--access函数与mkdir函数
  2. Designing GANs:又一个GAN生产车间
  3. Check failed: error == cudaSuccess (74 vs. 0) misaligned address
  4. Java十大简单性能优化
  5. 每日一题:leetcode1128.等价多米诺骨牌对数
  6. leetcode1267. 统计参与通信的服务器(dfs)
  7. LINUX内核下跑单片机按键,S3C2440下linux按键驱动编写及测试程序
  8. 7-54 查验身份证 (15 分)
  9. thinkphp v5.0.11漏洞_Thinkphp 5.0远程代码执行漏洞
  10. 站点信息 统计 内容 概况
  11. (转)oop设计模式简介
  12. python书籍下载网站_Python 精品开源电子书网站
  13. 均方根误差,平均绝对误差,均方误差,标准差计算方法
  14. 分布式系统可用性与一致性
  15. linux手机版模拟电脑,在你的PC上体验Firefox OS 1.3 模拟器
  16. TA100 T3.4
  17. CDR无法启动此程序 因为计算机丢失,教您快速解决CorelDRAW X7因缺少VGCore.dll无法启动的难题...
  18. C++11中的时间库std::chrono(引发关于时间的思考)
  19. C语言关键字浅析-double
  20. 廖雪峰Python教程 实战day05

热门文章

  1. 计算机系徽文案例,信息技术系——系徽征集令,重磅发布!
  2. ai怎么调界面大小_Illustrator怎么设置调整界面网格呢?
  3. java判断那个时间更晚_如何用Java判断日期是早于还是晚于另一个日期
  4. 笔记本电脑怎样连接打印机_“小小”打印机 | 惠普M17w迷你激打
  5. oracle缺少控制文件,关于oracle丢失控制文件的恢复办法
  6. pcl 使用gpu计算法向量_异构计算系列文章(一):定义、场景及局限性
  7. linux改变磁盘顺序,Linux上磁盘顺序混乱的情况
  8. -bash: vim: command not found 两种解决方法
  9. dnfdpl服务器维护了,2019DNF心悦DPL赛事活动地址 强化器和时空石没了
  10. 向android获取文件路径,在Android上获取图像的文件路径